Added copyright.
authorStephen Adams <edu/mit/csail/zurich/adams>
Sun, 20 Nov 1994 20:40:04 +0000 (20:40 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Sun, 20 Nov 1994 20:40:04 +0000 (20:40 +0000)
v8/src/compiler/midend/midend.scm

index 935bc3840641e7be42feb8ec6eb662f53403fa43..2bb3e9a1029ba57e45d8befc837ab111f62d09ee 100644 (file)
@@ -1,10 +1,43 @@
-;;; -*- Scheme -*-
+#| -*-Scheme-*-
+
+$Id: midend.scm,v 1.2 1994/11/20 20:40:04 adams Exp $
+
+Copyright (c) 1994 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. |#
 
 (declare (usual-integrations))
 
 ;;;; Phase structure
 
 (define *phases-to-show* '())
+(define *phases-to-omit* '())
 (define *announce-phases?* false)
 (define *debugging?* true)
 (define *current-phase-input* false)
               (or (eq? switch 'ALL)
                   (memq phase switch)))))
 
+      (define (run-phase program)
+       (if (memq this-phase *phases-to-omit*)
+           (copier/top-level program copier/remember)
+           (proc program)))
+      
       (lambda (program)
        (set! *current-phase* this-phase)
        (set! *current-phase-input* (and *debugging?* program))
              (write-string ";; Phase ")
              (write this-phase)))
        (if (not (show? this-phase))
-           (proc program)
+           (run-phase program)
            (begin
              (with-kmp-output-port
               (lambda ()
                 (show-program "Input to phase " program)))
-             (let ((result (proc program)))
+             (let ((result (run-phase program)))
                (if (show? next-phase)
                    (set! pending-message
                          (with-output-to-string
             simplify/top-level/5       ; as above
             cleanup/top-level/6        ; as above
 
+            ;;simplify/top-level
+            ;;cleanup/top-level
+            ;;simplify/top-level
+            ;;cleanup/top-level
+
             laterew/top-level          ; rewrite &+, vector-cons,
             cleanup/top-level/7        ; as above
             compat/top-level           ; rewrite code for compatibility