Reorganize code for new directory structure. Break some large useful
authorChris Hanson <org/chris-hanson/cph>
Thu, 19 Mar 1987 00:56:02 +0000 (00:56 +0000)
committerChris Hanson <org/chris-hanson/cph>
Thu, 19 Mar 1987 00:56:02 +0000 (00:56 +0000)
files into smaller ones that can be compiled.  Delete all
`using-syntax' occurrences and `Edwin Variables'.

24 files changed:
v7/src/compiler/back/asmmac.scm
v7/src/compiler/back/lapgn1.scm
v7/src/compiler/back/regmap.scm
v7/src/compiler/back/symtab.scm
v7/src/compiler/back/syntax.scm
v7/src/compiler/machines/bobcat/assmd.scm
v7/src/compiler/machines/bobcat/coerce.scm
v7/src/compiler/machines/bobcat/insmac.scm
v7/src/compiler/machines/bobcat/instr1.scm
v7/src/compiler/machines/bobcat/instr2.scm
v7/src/compiler/machines/bobcat/instr3.scm
v7/src/compiler/machines/bobcat/lapgen.scm
v7/src/compiler/machines/bobcat/machin.scm
v7/src/compiler/machines/bobcat/make.scm-68040
v7/src/compiler/machines/spectrum/assmd.scm
v7/src/compiler/machines/spectrum/coerce.scm
v7/src/compiler/machines/spectrum/lapgen.scm
v7/src/compiler/machines/spectrum/machin.scm
v7/src/compiler/machines/spectrum/make.scm
v7/src/compiler/rtlgen/rgcomb.scm
v7/src/compiler/rtlgen/rtlgen.scm
v7/src/compiler/rtlopt/ralloc.scm
v7/src/compiler/rtlopt/rcse1.scm
v7/src/compiler/rtlopt/rlife.scm

index 779ebb53cd1067b3dfbe7cbeb212dbab7b154383..ef75dd962f195ce103cf872f010ede05919de95f 100644 (file)
@@ -1,44 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/asmmac.scm,v 1.2 1987/03/19 00:49:46 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Assembler Syntax Macros
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (syntax-table-define assembler-syntax-table 'DEFINE-INSTRUCTION
   (macro (keyword . rules)
              ((null? (cdr components))
               (car components))
              (else
-              `(OPTIMIZE-GROUP ,@components)))))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; End:
               `(OPTIMIZE-GROUP ,@components)))))))
\ No newline at end of file
index e82d98bef1caa9f4b6962ae9b0ba3ae9b838bc6c..82c6691c6d4511e3c57f4964784a9b61b56e6d42 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; LAP Code Generation
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/lapgn1.scm,v 1.26 1987/03/19 00:50:04 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/lapgn1.scm,v 1.25 1987/02/05 21:49:47 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; LAP Code Generation
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define *block-start-label*)
 (define *code-object-label*)
 
 (define-integrable (set-current-branches! consequent alternative)
   (set-rtl-pnode-consequent-lap-generator! *current-rnode* consequent)
-  (set-rtl-pnode-alternative-lap-generator! *current-rnode* alternative))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-generator-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
   pattern)
\ No newline at end of file
index 9e5583bf7cc5473437cc8ab8918d56bf7233b615..e413bde2cd570379bc2e01e763f82ae50f412bc9 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; Register Allocator
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/regmap.scm,v 1.87 1987/03/19 00:50:25 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/regmap.scm,v 1.86 1986/12/18 06:10:51 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; Register Allocator
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 #|
 
@@ -537,14 +531,4 @@ REGISTER-RENUMBERs are equal.
 )
 
 ;;; end REGISTER-ALLOCATOR-PACKAGE
-))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access register-allocator-package lap-generator-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
 )
\ No newline at end of file
index d72da3d85b9e1ed34d98dca0ce866ff11b48361a..d33c6277b7547b57fea5f9a54a87ee55c713d666 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; Symbol Tables
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/symtab.scm,v 1.39 1987/03/19 00:50:36 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/symtab.scm,v 1.38 1986/12/16 18:20:24 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; Symbol Tables
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define (make-symbol-table)
   (cons "Symbol Table" '()))
   (vector-set! binding 1 (cons daemon (vector-ref binding 1))))
 
 (define (remove-binding-daemon! binding daemon)
-  (vector-set! binding 1 (delq! daemon (vector-ref binding 1))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; End:
   (vector-set! binding 1 (delq! daemon (vector-ref binding 1))))
\ No newline at end of file
index 3e5f68176835be4e54ffc110b34f99307ac17620..b848e7cc06c9df5a475d42a6d161dbdfea1520c9 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/back/syntax.scm,v 1.13 1987/03/19 00:50:43 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; LAP Syntaxer
 
 (define (standard-coercion kernel)
   (lambda (nbits)
     (lambda (n)
-      (unsigned-integer->bit-string nbits (kernel n)))))
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; End:
       (unsigned-integer->bit-string nbits (kernel n)))))
\ No newline at end of file
index 4f70eb3b25d4fb0508bcb4daf2d30f6ca0e0065c..e0b253b054be1786866f2522e53b4d4527973016 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/assmd.scm,v 1.29 1987/03/19 00:52:27 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Assembler Machine Dependencies
 
@@ -58,9 +55,4 @@
 (define (object->bit-string object)
   (bit-string-append
    (unsigned-integer->bit-string 24 (primitive-datum object))
-   (unsigned-integer->bit-string 8 (primitive-type object))))
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-package compiler-package)
-;;; End:
    (unsigned-integer->bit-string 8 (primitive-type object))))
\ No newline at end of file
index 32023278fa25d67017b43d7a77a94d068fb6c42a..9508b2a36ebee37d9356b203f48117032f6a4824 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/coerce.scm,v 1.7 1987/03/19 00:52:34 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; 68000 Specific Coercions
 
@@ -82,9 +79,4 @@
 
 (define-coercion 'QUICK 3)
 (define-coercion 'SHIFT-NUMBER 3)
-(define-coercion 'SHORT-LABEL 8)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; End:
 (define-coercion 'SHORT-LABEL 8)
\ No newline at end of file
index 2e43f4ec4674254d928225d4f0abe5365538c472..70bd108050e7f9d1c32ad6b0883346adf6cdefaa 100644 (file)
@@ -1,44 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/insmac.scm,v 1.118 1987/03/19 00:52:58 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; 68000 Instruction Set Macros
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 ;;;; Instruction Definitions
 
                 false
                 `((EA-EXTENSION ,expression) '())))
       (else
-       (error "EXPAND-DESCRIPTOR: Badly-formed descriptor" descriptor)))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; End:
        (error "EXPAND-DESCRIPTOR: Badly-formed descriptor" descriptor)))))
\ No newline at end of file
index 170034c772caf2e8fa2977fe04634577bfdff54a..0c741711a476c963bac1f707d1fea9208bdc6856 100644 (file)
@@ -1,47 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/instr1.scm,v 1.60 1987/03/19 00:53:05 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; 68000 Instruction Set Description
 ;;; Originally from GJS (who did the hard part).
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/instr1.scm,v 1.59 1986/12/20 22:59:09 cph Exp $
-
 (declare (usual-integrations))
-(using-syntax (access assembler-syntax-table compiler-package)
 \f
 ;;;; Effective Addressing
 
 
 (define-instruction DC
   ((W (? expression))
-   (WORD (16 expression SIGNED))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; Scheme Syntax Table: (access assembler-syntax-table compiler-package)
-;;; End:
    (WORD (16 expression SIGNED))))
\ No newline at end of file
index 3038f8db21f0fcf184d870bcf7f8ad6a0cc671b6..b2f9ef748636b4997de6aaf46a0fa2af51828a23 100644 (file)
@@ -1,45 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of
-;;;    this software shall duly acknowledge such use, in accordance
-;;;    with the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/instr2.scm,v 1.9 1987/03/19 00:53:15 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; 68000 Instruction Set Description
 ;;; Originally from GJS (who did the hard part).
 
 (declare (usual-integrations))
-(using-syntax (access assembler-syntax-table compiler-package)
 \f
 ;;;; BCD Arithmetic
 
   (define-bit-manipulation BTST #b00 ea-d   ea-d&-&)
   (define-bit-manipulation BCHG #b01 ea-d&a ea-d&a)
   (define-bit-manipulation BCLR #b10 ea-d&a ea-d&a)
-  (define-bit-manipulation BSET #b11 ea-d&a ea-d&a))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; Scheme Syntax Table: (access assembler-syntax-table compiler-package)
-;;; End:
   (define-bit-manipulation BSET #b11 ea-d&a ea-d&a))
\ No newline at end of file
index 6606627239e48d44a26b3d48807c5b3133c6154b..045d6090d2e7a2bb17c1e381c13078a2c21eae7a 100644 (file)
@@ -1,45 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/instr3.scm,v 1.9 1987/03/19 00:53:25 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; 68000 Instruction Set Description
 ;;; Originally from GJS (who did the hard part).
 
 (declare (usual-integrations))
-(using-syntax (access assembler-syntax-table compiler-package)
 \f
 ;;;; Control Transfer
 
         (1 (encode-wl s))
         (3 #b001)
         (3 ry))
-   (relative-word l)))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; Scheme Syntax Table: (access assembler-syntax-table compiler-package)
-;;; End:
    (relative-word l)))
\ No newline at end of file
index c05d5b8d7834f36af13acea41e32c65d21ed6aa0..8597a5401b860b5d1e84a83b19cd40480e22640b 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; RTL Rules for 68020
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/lapgen.scm,v 1.154 1987/03/19 00:53:33 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/lapgen.scm,v 1.153 1987/01/10 04:32:35 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; RTL Rules for 68020
 
 (declare (usual-integrations))
-(using-syntax (access lap-generator-syntax-table compiler-package)
 \f
 ;;;; Basic machine instructions
 
   (MESSAGE-SENDER:VALUE (? receiver-offset))
   `(,@(clear-map!)
     ,@(increment-anl 7 receiver-offset)
-    (JMP ,popper:value)))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-generator-package compiler-package)
-;;; Scheme Syntax Table: (access lap-generator-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
 (define popper:value '(@AO 6 #x01E8))
\ No newline at end of file
index 35105a8125ecc2c71e9efb8acaaab73dc3251966..83eb26809a7df924e4d91c83c27366717f523038 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; Machine Model for 68020
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/machin.scm,v 1.44 1987/03/19 00:53:49 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/machin.scm,v 1.43 1987/02/10 22:14:37 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; Machine Model for 68020
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f(define (rtl:message-receiver-size:closure) 1)
 (define (rtl:message-receiver-size:stack) 1)
 (define (rtl:message-receiver-size:subproblem) 2)
   (rtl:make-machine-register d0))
 
 (define-integrable (interpreter-register:enclose)
-  (rtl:make-machine-register a0))
+  (rtl:make-offset (interpreter-regs-pointer) 5))
 
 (define-integrable (interpreter-register:lookup)
   (rtl:make-machine-register d0))
 (define (lap:make-entry-point label block-start-label)
   `((ENTRY-POINT ,label)
     (DC W (- ,label ,block-start-label))
-    (LABEL ,label)))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: compiler-package
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
     (LABEL ,label)))
\ No newline at end of file
index e4668e2e0bf5fdef4132d411f77a6f3ceaf8a601..b5838d3129d200f049453bce395c2881b5e6098d 100644 (file)
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/make.scm-68040,v 1.11 1987/03/19 00:53:59 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Compiler Make File for MC68020
 
 (declare (usual-integrations))
 \f
 (set-working-directory-pathname! "$zcomp")
-(load "rcs" system-global-environment)
-(load "load" system-global-environment)
+(load "base/rcs" system-global-environment)
+(load "base/load" system-global-environment)
 
 (load-system system-global-environment
             'COMPILER-PACKAGE
             '(SYSTEM-GLOBAL-ENVIRONMENT)
             '(
               (SYSTEM-GLOBAL-ENVIRONMENT
-               "macros.bin"            ;compiler syntax
-               "pbs.bin"               ;bit-string read/write syntax
+               "base/macros"           ;compiler syntax
+               "base/pbs"              ;bit-string read/write syntax
                )
 
               (COMPILER-PACKAGE
-               "mc68020/machin.bin"    ;machine dependent stuff
-               "toplev.bin"            ;top level
-               "utils.bin"             ;odds and ends
-               "cfg.bin"               ;control flow graph
-               "ctypes.bin"            ;CFG datatypes
-               "dtypes.bin"            ;DFG datatypes
-               "bblock.bin"            ;Basic block datatype
-               "dfg.bin"               ;data flow graph
-               "rtl.bin"               ;register transfer language
-               "emodel.bin"            ;environment model
-               "rtypes.bin"            ;RTL analyzer datatypes
-               "nmatch.bin"            ;simple pattern matcher
+               "base/decls"            ;declarations
+;              "machines/bobcat/decls" ;more declarations
+
+               "base/object"           ;tagged object support
+               "base/queue"            ;queue abstraction
+               "base/sets"             ;set abstraction
+               "source/mvalue"         ;multiple-value support
+
+               "machines/bobcat/machin" ;machine dependent stuff
+               "base/toplev"           ;top level
+               "base/utils"            ;odds and ends
+               "base/cfg"              ;control flow graph
+               "base/ctypes"           ;CFG datatypes
+               "base/dtypes"           ;DFG datatypes
+               "base/bblock"           ;Basic block datatype
+               "base/dfg"              ;data flow graph
+               "base/rtltyp"           ;RTL: type definitions
+               "base/rtl"              ;RTL: expression operations
+               "base/rtlreg"           ;RTL: registers
+               "base/rtlcfg"           ;RTL: CFG types
+               "base/emodel"           ;environment model
+               "base/rtypes"           ;RTL analyzer datatypes
+               "base/nmatch"           ;simple pattern matcher
                )
 
               (CONVERTER-PACKAGE
-               "graphc.bin"            ;SCode->flow-graph converter
+               "alpha/graphc"          ;SCode->flow-graph converter
                )
 
               (DATAFLOW-PACKAGE
-               "dflow.bin"             ;Dataflow analyzer
+               "alpha/dflow"           ;Dataflow analyzer
                )
 
               (RTL-GENERATOR-PACKAGE
-               "rtlgen.bin"            ;RTL generator
-               "rgcomb.bin"            ;RTL generator: combinations
-               "linear.bin"            ;linearization
+               "front-end/rtlgen"      ;RTL generator
+               "front-end/rgcomb"      ;RTL generator: combinations
+               "base/linear"           ;linearization
                )
 
               (RTL-CSE-PACKAGE
-               "rcse.bin"              ;RTL common subexpression eliminator
+               "front-end/rcse"        ;RTL common subexpression eliminator
+               "front-end/rcseep"      ;CSE expression predicates
+               "front-end/rcsesr"      ;CSE stack references
+               "front-end/rcseht"      ;CSE hash table
+               "front-end/rcsesa"      ;CSE state abstraction
+               "front-end/rcserq"      ;CSE register/quantity abstractions
                )
 
               (RTL-ANALYZER-PACKAGE
-               "rlife.bin"             ;RTL register lifetime analyzer
-               "ralloc.bin"            ;RTL register allocator
+               "front-end/rlife"       ;RTL register lifetime analyzer
+               "front-end/ralloc"      ;RTL register allocator
                )
 
               (LAP-GENERATOR-PACKAGE
-               "lapgen.bin"            ;LAP generator.
-               "regmap.bin"            ;Hardware register allocator.
-               "mc68020/lapgen.bin"    ;code generation rules.
+               "back-end/lapgen"       ;LAP generator.
+               "back-end/regmap"       ;Hardware register allocator.
+               "machines/bobcat/lapgen" ;code generation rules.
                )
 
               (LAP-SYNTAXER-PACKAGE
-               "syntax.bin"            ;Generic syntax phase
-               "mc68020/coerce.bin"    ;Coercions: integer -> bit string
-               "asmmac.bin"            ;Macros for hairy syntax
-               "mc68020/insmac.bin"    ;Macros for hairy syntax
-               "mc68020/instr1.bin"    ;68000 Effective addressing
-               "mc68020/instr2.bin"    ;68000 Instructions
-               "mc68020/instr3.bin"    ;  "        "
+               "back-end/syntax"       ;Generic syntax phase
+               "machines/bobcat/coerce" ;Coercions: integer -> bit string
+               "back-end/asmmac"       ;Macros for hairy syntax
+               "machines/bobcat/insmac" ;Macros for hairy syntax
+               "machines/bobcat/instr1" ;68000 Effective addressing
+               "machines/bobcat/instr2" ;68000 Instructions
+               "machines/bobcat/instr3" ;  "        "
                )
 
               (LAP-PACKAGE
-               "mc68020/assmd.bin"     ;Machine dependent
-               "symtab.bin"            ;Symbol tables
-               "block.bin"             ;Assembly blocks
-               "laptop.bin"            ;Assembler top level
+               "machines/bobcat/assmd" ;Machine dependent
+               "back-end/symtab"       ;Symbol tables
+               "back-end/block"        ;Assembly blocks
+               "back-end/laptop"       ;Assembler top level
                )
 
               ))
       (define :version)
       (define :modification)
 
-      (parse-rcs-header "$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/make.scm-68040,v 1.10 1986/12/20 23:49:57 cph Exp $"
+      (parse-rcs-header "$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/bobcat/make.scm-68040,v 1.11 1987/03/19 00:53:59 cph Exp $"
        (lambda (filename version date time author state)
          (set! :version (car version))
          (set! :modification (cadr version))))))
index 4f70eb3b25d4fb0508bcb4daf2d30f6ca0e0065c..2f19b496412ac27405adb46f1502ab998d141812 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/assmd.scm,v 1.29 1987/03/19 00:54:40 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Assembler Machine Dependencies
 
@@ -58,9 +55,4 @@
 (define (object->bit-string object)
   (bit-string-append
    (unsigned-integer->bit-string 24 (primitive-datum object))
-   (unsigned-integer->bit-string 8 (primitive-type object))))
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-package compiler-package)
-;;; End:
    (unsigned-integer->bit-string 8 (primitive-type object))))
\ No newline at end of file
index b8792bf57c0a516e46b0a24b1349c88c4442752b..eb8c4c818d1a9525b308c0734ec829be07979931 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/coerce.scm,v 1.4 1987/03/19 00:54:46 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Spectrum Specific Coercions
 
 (define-coercion 'ASSEMBLE17:X 5)
 (define-coercion 'ASSEMBLE17:Y 11)
 (define-coercion 'ASSEMBLE17:Z 1)
-(define-coercion 'ASSEMBLE21:X 21)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-syntaxer-package compiler-package)
-;;; End:
 (define-coercion 'ASSEMBLE21:X 21)
\ No newline at end of file
index a9111379b0851af1e2d41dedc4a1090c62a3ef02..8e1f99f712a9c1c546040964a0d6edb30ca4e189 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; RTL Rules for Spectrum
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/lapgen.scm,v 1.136 1987/03/19 00:55:32 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/lapgen.scm,v 1.135 1987/02/15 13:06:32 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; RTL Rules for Spectrum
 
 (declare (usual-integrations))
-(using-syntax (access lap-generator-syntax-table compiler-package)
 \f
 ;;;; Interface to Allocator
 
   (MESSAGE-SENDER:VALUE (? receiver-offset))
   `(,@(clear-map!)
     (LDO () ,(offset-reference r30 (* receiver-offset 4)) ,r30)
-    (BLE (N) ,popper:value)))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access lap-generator-package compiler-package)
-;;; Scheme Syntax Table: (access lap-generator-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
     (BLE (N) ,popper:value)))
\ No newline at end of file
index 3952c03c254dfe6364202b6552f1cc6db1003987..ac31a85c6ac935b41bd2a3176d996e300ca9fae8 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; Machine Model for Spectrum
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/machin.scm,v 1.41 1987/03/19 00:55:54 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/machin.scm,v 1.40 1987/02/13 09:41:41 cph Exp $
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; Machine Model for Spectrum
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define (rtl:message-receiver-size:closure) 1)
 (define (rtl:message-receiver-size:stack) 1)
 (define (lap:make-entry-point label block-start-label)
   `((ENTRY-POINT ,label)
     (WORD (- ,label ,block-start-label))
-    (LABEL ,label)))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: compiler-package
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
     (LABEL ,label)))
\ No newline at end of file
index c954fef43763cbe3405611f30b881e6ef9702f48..2461094ee9eef72f5b920f9e8d9d8a24d042fe5f 100644 (file)
@@ -1,39 +1,36 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/make.scm,v 1.3 1987/03/19 00:56:02 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Compiler Make File for HP Precision Architecture
 
       (define :version)
       (define :modification)
 
-      (parse-rcs-header "$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/make.scm,v 1.2 1987/02/15 13:10:52 cph Exp $"
+      (parse-rcs-header "$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/machines/spectrum/make.scm,v 1.3 1987/03/19 00:56:02 cph Exp $"
        (lambda (filename version date time author state)
          (set! :version (car version))
          (set! :modification (cadr version))))))
index 3846e8a4772580ebc5944cb07920beca6f7e0da5..54063382a4c2e6f4e87d2b8a8d474d8705234519 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; RTL Generation: Combinations
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgcomb.scm,v 1.7 1987/03/19 00:47:01 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rgcomb.scm,v 1.6 1987/01/01 19:07:14 cph Exp $
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; RTL Generation: Combinations
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define-generator combination-tag
   (lambda (combination offset rest-generator)
 (define (combination:normal combination offset rest-generator)
   ;; For the time being, all close-coded combinations will return
   ;; their values in the value register.  If the value of a
-  ;; combination is not a temporary, it is either a value-register
-  ;; or a value-ignore, which is alright.
+  ;; combination is not a temporary, it is a value-ignore, which is
+  ;; alright.
   (let ((value (combination-value combination)))
     (if (temporary? value)
-       (let ((type* (temporary-type value)))
-         (if type*
-             (if (not (eq? 'VALUE type*))
-                 (error "COMBINATION:NORMAL: Bad temporary type" type*))
+       (let ((type (temporary-type value)))
+         (if type
+             (if (not (eq? 'VALUE type))
+                 (error "COMBINATION:NORMAL: Bad temporary type" type))
              (set-temporary-type! value 'VALUE)))))
   (if (generate:next-is-null? (snode-next combination) rest-generator)
       (combination:reduction combination offset)
@@ -71,8 +65,7 @@
 (define (combination:constant combination offset rest-generator)
   (let ((value (combination-value combination))
        (next (snode-next combination)))
-    (cond ((or (value-register? value)
-              (value-temporary? value))
+    (cond ((value-temporary? value)
           (generate-assignment (combination-block combination)
                                value
                                (combination-constant-value combination)
     `(APPLY-STACK ,number-pushed
                  ,(+ number-pushed (block-frame-size block))
                  ,(block-ancestor-distance
-                  block
-                  (procedure-block
-                   (combination-known-operator combination))))))
+                   block
+                   (block-parent
+                    (procedure-block
+                     (combination-known-operator combination)))))))
 
 (define (invocation-prefix:stack->sibling combination number-pushed)
    `(MOVE-FRAME-UP ,number-pushed
 (define-export make-call:push-operator
   (make-call-maker subproblem->push 1+))
 
-)
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access rtl-generator-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
                   ,(-1+ (block-frame-size (combination-block combination)))))
\ No newline at end of file
index 77e283db838a45aab2ad6043b8dbebb97c5e154f..5c381d4b2b764312837ebc85e8574e401af87987 100644 (file)
@@ -1,46 +1,40 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1987 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
 
-;;;; RTL Generation
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rtlgen.scm,v 1.6 1987/03/19 00:47:32 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/rtlgen.scm,v 1.5 1987/02/11 22:55:14 cph Exp $
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
+
+;;;; RTL Generation
 
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define *nodes*)
 
                                   expression))))))
                      (generate:next next offset rest-generator))))
 \f
-(define (assignment:value-register block value-register rvalue next offset
+(define (assignment:value-register block rvalue next offset
                                   rest-generator rvalue->sexpression)
   (if (not (generate:next-is-null? next rest-generator))
       (error "Return node has next"))
   (scfg*node->node!
-   (scfg*scfg->scfg! (if (or (value-register? rvalue)
-                            (value-temporary? rvalue))
+   (scfg*scfg->scfg! (if (value-temporary? rvalue)
                         (make-null-cfg)
                         (rvalue->sexpression rvalue offset
                           (lambda (expression)
                          (rtl:make-return))))
    (generate:next next offset rest-generator)))
 
-(define-assignment value-register-tag
-  assignment:value-register)
-
-(define-assignment value-push-tag
-  (lambda (block value-push rvalue next offset rest-generator
-                rvalue->sexpression)
-    (scfg*node->node! (rvalue->sexpression rvalue offset rtl:make-push)
-                     (generate:next next (1+ offset) rest-generator))))
-
 (define-assignment value-ignore-tag
   (lambda (block value-ignore rvalue next offset rest-generator
                 rvalue->sexpression)
                (rtl:make-assignment temporary expression))))
        (generate:next next offset rest-generator)))
       ((VALUE)
-       (assignment:value-register block temporary rvalue next offset
+       (assignment:value-register block rvalue next offset
                                  rest-generator rvalue->sexpression))
       (else
        (error "Unknown temporary type" temporary)))))
   (lambda (block offset scfg-append! receiver)
     (receiver (rtl:make-fetch register:environment))))
 
-(define-rvalue->expression value-register-tag
-  (lambda (value-register offset scfg-append! receiver)
-    (receiver (rtl:make-fetch register:value))))
-
 (define-rvalue->expression reference-tag
   (lambda (reference offset scfg-append! receiver)
     (reference->expression (reference-block reference)
   ;; IC procedures have their entry points linked into their headers
   ;; at load time by the linker.
   (let ((header
-        (scode:make-lambda (variable-name (procedure-name procedure))
+        (scode/make-lambda (variable-name (procedure-name procedure))
                            (map variable-name (procedure-required procedure))
                            (map variable-name (procedure-optional procedure))
                            (let ((rest (procedure-rest procedure)))
          (cons (cons procedure header)
                *ic-procedure-headers*))
     (receiver (rtl:make-typed-cons:pair
-              (rtl:make-constant (scode:procedure-type-code header))
+              (rtl:make-constant (scode/procedure-type-code header))
               (rtl:make-constant header)
               (rtl:make-fetch register:environment)))))
 \f
 (define (rvalue->expression:closure-procedure procedure offset scfg-append!
                                              receiver)
   (let ((block (block-parent (procedure-block procedure))))
+
     (define (finish environment)
       (receiver (rtl:make-typed-cons:pair
                 (rtl:make-constant type-code:compiled-procedure)
                 (rtl:make-entry:procedure procedure)
                 environment)))
+
+    (define (ic-locative closure-block block)
+      (let ((loser
+            (lambda (locative)
+              (error "Closure parent not IC block"))))
+       (find-block closure-block block offset
+         loser
+         loser
+         (lambda (locative nearest-ic-locative)
+           locative))))
+
     (cond ((not block)
           (finish (rtl:make-constant false)))
          ((ic-block? block)
-          (finish (rtl:make-fetch register:environment)))
+          (finish
+           (let ((closure-block (procedure-closure-block procedure)))
+             (if (ic-block? closure-block)
+                 (rtl:make-fetch register:environment)
+                 (ic-locative closure-block block)))))
          ((closure-block? block)
           (let ((closure-block (procedure-closure-block procedure)))
             (define (loop variables n receiver)
                                     pushes)))
                             (finish (rtl:interpreter-call-result:enclose))))
 
-            (define (loser locative)
-              (error "Closure parent not IC block"))
-
             (loop (block-bound-variables block) 0
               (lambda (offset n pushes)
                 (let ((parent (block-parent block)))
                   (if parent
-                      (find-block closure-block parent offset
-                        loser
-                        loser
-                        (lambda (locative nearest-ic-locative)
-                          (make-frame (1+ n)
-                                      (cons (rtl:make-push locative)
-                                            pushes))))
+                      (make-frame (1+ n)
+                                  (cons (rtl:make-push
+                                         (ic-locative closure-block parent))
+                                        pushes))
                       (make-frame n pushes)))))))
-         (else (error "Unknown block type" block)))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access rtl-generator-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
   "node rtl arguments")
\ No newline at end of file
index 03a2d270c2d96b998506dd405eb0409d2f849c5e..7f53d09beea7b6b578dcd9b1d64c5273ff270161 100644 (file)
@@ -1,47 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/ralloc.scm,v 1.10 1987/03/19 00:46:34 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; Register Allocation
 ;;;  Based on the GNU C Compiler
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/ralloc.scm,v 1.9 1986/12/20 22:52:48 cph Exp $
-
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define (register-allocation bblocks)
   ;; First, renumber all the registers remaining to be allocated.
              (if (pseudo-register? register)
                  (regset-adjoin! live
                                  (vector-ref register->renumber
-                                             register))))))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access rtl-analyzer-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
                                              register))))))))
\ No newline at end of file
index 3ac437078a9fb777b86d3163c40dc4cf2f49a713..73874c76c7c1421c38dae3114b03c8266a2e86d4 100644 (file)
@@ -1,47 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rcse1.scm,v 1.99 1987/03/19 00:46:43 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; RTL Common Subexpression Elimination
 ;;;  Based on the GNU C Compiler
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rcse1.scm,v 1.98 1987/02/12 00:41:08 cph Exp $
-
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 (define (common-subexpression-elimination blocks n-registers)
   (fluid-let ((*next-quantity-number* 0))
   (lambda (statement)
     (let ((n (rtl:interpreter-call:enclose-size statement)))
       (stack-region-invalidate! 0 n)
-      (stack-pointer-adjust! n))))
+      (stack-pointer-adjust! n))
+    (expression-invalidate! (interpreter-register:enclose))))
 
 (define (define-assignment-method type
          get-environment set-environment!
 (define (hash-object object)
   (cond ((integer? object) object)
        ((symbol? object) (symbol-hash object))
-       (else (hash object))))
-\f
-;;;; Expression Predicates
-
-(define (expression-equivalent? x y validate?)
-  ;; If VALIDATE? is true, assume that Y comes from the hash table and
-  ;; should have its register references validated.
-  (define (loop x y)
-    (let ((type (rtl:expression-type x)))
-      (and (eq? type (rtl:expression-type y))
-          (case type
-            ((REGISTER)
-             (register-equivalent? x y))
-            ((OFFSET)
-             (let ((rx (rtl:offset-register x)))
-               (and (register-equivalent? rx (rtl:offset-register y))
-                    (if (interpreter-stack-pointer? rx)
-                        (eq? (stack-reference-quantity x)
-                             (stack-reference-quantity y))
-                        (= (rtl:offset-number x)
-                           (rtl:offset-number y))))))
-            (else
-             (rtl:match-subexpressions x y loop))))))
-
-  (define (register-equivalent? x y)
-    (let ((x (rtl:register-number x))
-         (y (rtl:register-number y)))
-      (and (eq? (register-quantity x) (register-quantity y))
-          (or (not validate?)
-              (= (register-in-table y) (register-tick y))))))
-
-  (loop x y))
-
-(define (expression-refers-to? x y)
-  ;; True iff any subexpression of X matches Y.
-  (define (loop x)
-    (or (eq? x y)
-       (if (eq? (rtl:expression-type x) (rtl:expression-type y))
-           (expression-equivalent? x y false)
-           (rtl:any-subexpression? x loop))))
-  (loop x))
-\f
-(define (expression-address-varies? expression)
-  (if (memq (rtl:expression-type expression)
-           '(OFFSET PRE-INCREMENT POST-INCREMENT))
-      (register-expression-varies? (rtl:address-register expression))
-      (rtl:any-subexpression? expression expression-address-varies?)))
-
-(define (expression-varies? expression)
-  ;; This procedure should not be called on a register expression.
-  (let ((type (rtl:expression-type expression)))
-    (or (memq type '(OFFSET PRE-INCREMENT POST-INCREMENT))
-       (if (eq? type 'REGISTER)
-           (register-expression-varies? expression)
-           (rtl:any-subexpression? expression expression-varies?)))))
-
-(define (register-expression-varies? expression)
-  (not (= regnum:regs-pointer (rtl:register-number expression))))
-
-(define (stack-push/pop? expression)
-  (and (pre/post-increment? expression)
-       (interpreter-stack-pointer? (rtl:address-register expression))))
-
-(define (heap-allocate? expression)
-  (and (pre/post-increment? expression)
-       (interpreter-free-pointer? (rtl:address-register expression))))
-
-(define-integrable (pre/post-increment? expression)
-  (memq (rtl:expression-type expression) '(PRE-INCREMENT POST-INCREMENT)))
-\f
-;;;; Stack References
-
-(define *stack-offset*)
-(define *stack-reference-quantities*)
-
-(define (stack-reference? expression)
-  (and (eq? (rtl:expression-type expression) 'OFFSET)
-       (interpreter-stack-pointer? (rtl:address-register expression))))
-
-(define (stack-reference-quantity expression)
-  (let ((n (+ *stack-offset* (rtl:offset-number expression))))
-    (let ((entry (ass= n *stack-reference-quantities*)))
-      (if entry
-         (cdr entry)
-         (let ((quantity (new-quantity false)))
-           (set! *stack-reference-quantities*
-                 (cons (cons n quantity)
-                       *stack-reference-quantities*))
-           quantity)))))
-
-(define-integrable (stack-pointer-adjust! offset)
-  (set! *stack-offset* (+ (stack->memory-offset offset) *stack-offset*))
-  (stack-pointer-invalidate!))
-
-(define-integrable (stack-pointer-invalidate!)
-  (register-expression-invalidate! (interpreter-stack-pointer)))
-
-(define-integrable (stack-invalidate!)
-  (set! *stack-reference-quantities* '()))
-
-(define (stack-region-invalidate! start end)
-  (let ((end (+ *stack-offset* end)))
-    (define (loop i quantities)
-      (if (< i end)
-         (loop (1+ i)
-               (del-ass=! i quantities))
-         (set! *stack-reference-quantities* quantities)))
-    (loop (+ *stack-offset* start) *stack-reference-quantities*)))
-
-(define (stack-reference-invalidate! expression)
-  (expression-invalidate! expression)
-  (set! *stack-reference-quantities*
-       (del-ass=! (+ *stack-offset* (rtl:offset-number expression))
-                  *stack-reference-quantities*)))
-
-(define ass= (association-procedure = car))
-(define del-ass=! (delete-association-procedure list-deletor! = car))
-\f
-;;;; Hash Table Abstraction
-
-(define n-buckets 31)
-
-(define (make-hash-table)
-  (make-vector n-buckets false))
-
-(define *hash-table*)
-
-(define-integrable (hash-table-ref hash)
-  (vector-ref *hash-table* hash))
-
-(define-integrable (hash-table-set! hash element)
-  (vector-set! *hash-table* hash element))
-
-(define element-tag (make-vector-tag false 'ELEMENT))
-(define element? (tagged-vector-predicate element-tag))
-
-(define-vector-slots element 1
-  expression cost in-memory?
-  next-hash previous-hash
-  next-value previous-value first-value)
-
-(define (make-element expression)
-  (vector element-tag expression false false false false false false false))
-\f
-(define (hash-table-lookup hash expression)
-  (define (loop element)
-    (and element
-        (if (let ((expression* (element-expression element)))
-              (or (eq? expression expression*)
-                  (expression-equivalent? expression expression* true)))
-            element
-            (loop (element-next-hash element)))))
-  (loop (hash-table-ref hash)))
-
-(define (hash-table-insert! hash expression class)
-  (let ((element (make-element expression))
-       (cost (rtl:expression-cost expression)))
-    (set-element-cost! element cost)
-    (let ((next (hash-table-ref hash)))
-      (set-element-next-hash! element next)
-      (if next (set-element-previous-hash! next element)))
-    (hash-table-set! hash element)
-    (cond ((not class)
-          (set-element-first-value! element element))
-         ((< cost (element-cost class))
-          (set-element-next-value! element class)
-          (set-element-previous-value! class element)
-          (let loop ((x element))
-            (if x
-                (begin (set-element-first-value! x element)
-                       (loop (element-next-value x))))))
-         (else
-          (set-element-first-value! element class)
-          (let loop ((previous class)
-                     (next (element-next-value class)))
-            (cond ((not next)
-                   (set-element-next-value! element false)
-                   (set-element-next-value! previous element)
-                   (set-element-previous-value! element previous))
-                  ((<= cost (element-cost next))
-                   (set-element-next-value! element next)
-                   (set-element-previous-value! next element)
-                   (set-element-next-value! previous element)
-                   (set-element-previous-value! element previous))
-                  (else
-                   (loop next (element-next-value next)))))))
-    element))
-\f
-(define (hash-table-delete! hash element)
-  (if element
-      (begin
-       ;; **** Mark this element as removed.  [ref crock-1]
-       (set-element-first-value! element false)
-       (let ((next (element-next-value element))
-            (previous (element-previous-value element)))
-        (if next (set-element-previous-value! next previous))
-        (if previous
-            (set-element-next-value! previous next)
-            (let loop ((element next))
-              (if element
-                  (begin (set-element-first-value! element next)
-                         (loop (element-next-value element)))))))
-       (let ((next (element-next-hash element))
-            (previous (element-previous-hash element)))
-        (if next (set-element-previous-hash! next previous))
-        (if previous
-            (set-element-next-hash! previous next)
-            (hash-table-set! hash next))))))
-
-(define (hash-table-delete-class! predicate)
-  (let table-loop ((i 0))
-    (if (< i n-buckets)
-       (let bucket-loop ((element (hash-table-ref i)))
-         (if element
-             (begin (if (predicate element)
-                        (hash-table-delete! i element))
-                    (bucket-loop (element-next-hash element)))
-             (table-loop (1+ i)))))))
-\f
-(package (hash-table-copy)
-
-(define *elements*)
-
-(define-export (hash-table-copy table)
-  (fluid-let ((*elements* '()))
-    (vector-map table element-copy)))
-
-(define (element-copy element)
-  (and element
-       (let ((entry (assq element *elements*)))
-        (if entry
-            (cdr entry)
-            (let ((new (make-element (element-expression element))))
-              (set! *elements* (cons (cons element new) *elements*))
-              (set-element-cost! new (element-cost element))
-              (set-element-in-memory?! new (element-in-memory? element))
-              (set-element-next-hash!
-               new
-               (element-copy (element-next-hash element)))
-              (set-element-previous-hash!
-               new
-               (element-copy (element-previous-hash element)))
-              (set-element-next-value!
-               new
-               (element-copy (element-next-value element)))
-              (set-element-previous-value!
-               new
-               (element-copy (element-previous-value element)))
-              (set-element-first-value!
-               new
-               (element-copy (element-first-value element)))
-              new)))))
-
-)
-\f
-;;;; State Abstraction
-
-(define (state:initialize n-registers thunk)
-  (fluid-let ((*register-quantity* (make-vector n-registers))
-             (*register-next-equivalent* (make-vector n-registers))
-             (*register-previous-equivalent* (make-vector n-registers))
-             (*register-expression* (make-vector n-registers))
-             (*register-tick* (make-vector n-registers))
-             (*register-in-table* (make-vector n-registers))
-             (*hash-table* (make-hash-table))
-             (*stack-offset*)
-             (*stack-reference-quantities*))
-    (thunk)))
-
-(define (state:reset!)
-  (vector-fill-with-quantities! *register-quantity*)
-  (vector-fill! *register-next-equivalent* false)
-  (vector-fill! *register-previous-equivalent* false)
-  (vector-fill! *register-expression* false)
-  (for-each-machine-register
-   (lambda (register)
-     (set-register-expression! register (rtl:make-machine-register register))))
-  (vector-fill! *register-tick* 0)
-  (vector-fill! *register-in-table* -1)
-  (set! *hash-table* (make-hash-table))
-  (set! *stack-offset* 0)
-  (set! *stack-reference-quantities* '()))
-
-(define (vector-fill-with-quantities! vector)
-  (define (loop i)
-    (vector-set! vector i (new-quantity i))
-    (if (not (zero? i))
-       (loop (-1+ i))))
-  (loop (-1+ (vector-length vector))))
-
-(define (state:get)
-  (vector (vector-map *register-quantity* quantity-copy)
-         (vector-copy *register-next-equivalent*)
-         (vector-copy *register-previous-equivalent*)
-         (vector-copy *register-expression*)
-         (vector-copy *register-tick*)
-         (vector-copy *register-in-table*)
-         (hash-table-copy *hash-table*)
-         *stack-offset*
-         (copy-alist *stack-reference-quantities*)))
-
-(define (state:set! state)
-  (set! *register-quantity* (vector-ref state 0))
-  (set! *register-next-equivalent* (vector-ref state 1))
-  (set! *register-previous-equivalent* (vector-ref state 2))
-  (set! *register-expression* (vector-ref state 3))
-  (set! *register-tick* (vector-ref state 4))
-  (set! *register-in-table* (vector-ref state 5))
-  (set! *hash-table* (vector-ref state 6))
-  (set! *stack-offset* (vector-ref state 7))
-  (set! *stack-reference-quantities* (vector-ref state 8)))
-\f
-;;;; Register/Quantity Abstractions
-
-(define quantity-tag (make-vector-tag false 'QUANTITY))
-(define quantity? (tagged-vector-predicate quantity-tag))
-(define-vector-slots quantity 1 number first-register last-register)
-
-(define *next-quantity-number*)
-
-(define (generate-quantity-number)
-  (let ((n *next-quantity-number*))
-    (set! *next-quantity-number* (1+ *next-quantity-number*))
-    n))
-
-(define (make-quantity number first-register last-register)
-  (vector quantity-tag number first-register last-register))
-
-(define (new-quantity register)
-  (make-quantity (generate-quantity-number) register register))
-
-(define (quantity-copy quantity)
-  (make-quantity (quantity-number quantity)
-                (quantity-first-register quantity)
-                (quantity-last-register quantity)))
-
-(define-register-references quantity)
-(define-register-references next-equivalent)
-(define-register-references previous-equivalent)
-(define-register-references expression)
-(define-register-references tick)
-(define-register-references in-table)
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access rtl-cse-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
   rtl:set-interpreter-call:set!-value!)
\ No newline at end of file
index 772c33043031f5e2f486983f72a10f53a7fedbe2..f5cdb0c4b85a9735bd82e909067d68ff255d5d6b 100644 (file)
@@ -1,47 +1,41 @@
-;;; -*-Scheme-*-
-;;;
-;;;    Copyright (c) 1986 Massachusetts Institute of Technology
-;;;
-;;;    This material was developed by the Scheme project at the
-;;;    Massachusetts Institute of Technology, Department of
-;;;    Electrical Engineering and Computer Science.  Permission to
-;;;    copy this software, to redistribute it, and to use it for any
-;;;    purpose is granted, subject to the following restrictions and
-;;;    understandings.
-;;;
-;;;    1. Any copy made of this software must include this copyright
-;;;    notice in full.
-;;;
-;;;    2. Users of this software agree to make their best efforts (a)
-;;;    to return to the MIT Scheme project any improvements or
-;;;    extensions that they make, so that these may be included in
-;;;    future releases; and (b) to inform MIT of noteworthy uses of
-;;;    this software.
-;;;
-;;;    3. All materials developed as a consequence of the use of this
-;;;    software shall duly acknowledge such use, in accordance with
-;;;    the usual standards of acknowledging credit in academic
-;;;    research.
-;;;
-;;;    4. MIT has made no warrantee or representation that the
-;;;    operation of this software will be error-free, and MIT is
-;;;    under no obligation to provide any services, by way of
-;;;    maintenance, update, or otherwise.
-;;;
-;;;    5. In conjunction with products arising from the use of this
-;;;    material, there shall be no use of the name of the
-;;;    Massachusetts Institute of Technology nor of any adaptation
-;;;    thereof in any advertising, promotional, or sales literature
-;;;    without prior written consent from MIT in each case.
-;;;
+#| -*-Scheme-*-
+
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rlife.scm,v 1.55 1987/03/19 00:47:19 cph Exp $
+
+Copyright (c) 1987 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. |#
 
 ;;;; RTL Register Lifetime Analysis
 ;;;  Based on the GNU C Compiler
 
-;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlopt/rlife.scm,v 1.54 1986/12/20 23:48:53 cph Exp $
-
 (declare (usual-integrations))
-(using-syntax (access compiler-syntax-table compiler-package)
 \f
 ;;;; Lifetime Analysis
 
                               (lambda (register)
                                 (write-string " ")
                                 (write register)))))))
-             (reverse bblocks))))
-
-;;; end USING-SYNTAX
-)
-
-;;; Edwin Variables:
-;;; Scheme Environment: (access rtl-analyzer-package compiler-package)
-;;; Scheme Syntax Table: (access compiler-syntax-table compiler-package)
-;;; Tags Table Pathname: (access compiler-tags-pathname compiler-package)
-;;; End:
        (pseudo-register? (rtl:register-number expression))))
\ No newline at end of file