Added switch compiler:rtl-instruction-scheduling?
authorStephen Adams <edu/mit/csail/zurich/adams>
Sat, 20 Jul 1996 18:08:46 +0000 (18:08 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Sat, 20 Jul 1996 18:08:46 +0000 (18:08 +0000)
v8/src/compiler/base/switch.scm
v8/src/compiler/base/toplev.scm

index 7e51df6a7678e7ce009402a68a1c3fbd46dda4f6..fd93bd807d70401be059a517af9f245a62d9bbd7 100644 (file)
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: switch.scm,v 1.5 1995/08/08 16:17:59 adams Exp $
+$Id: switch.scm,v 1.6 1996/07/20 18:08:36 adams Exp $
 
-Copyright (c) 1988-1994  Massachusetts Institute of Technology
+Copyright (c) 1988-1996  Massachusetts Institute of Technology
 
 This material was developed by the Scheme project at the Massachusetts
 Institute of Technology, Department of Electrical Engineering and
@@ -55,6 +55,7 @@ MIT in each case. |#
 (define compiler:optimize-environments? true)
 (define compiler:analyze-side-effects? true)
 (define compiler:cse? true)
+(define compiler:rtl-instruction-scheduling? false)
 (define compiler:open-code-primitives? true)
 (define compiler:generate-kmp-files? false)
 (define compiler:kmp-output-abbreviated? true)
index 8075ef01f9dc67dafd0ae12d0eff2ea7c6bcedea..4fd7c68211b547805916c80c55e5f5d3bfce66ce 100644 (file)
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: toplev.scm,v 1.11 1995/08/08 16:20:33 adams Exp $
+$Id: toplev.scm,v 1.12 1996/07/20 18:08:46 adams Exp $
 
-Copyright (c) 1988-1995 Massachusetts Institute of Technology
+Copyright (c) 1988-1996 Massachusetts Institute of Technology
 
 This material was developed by the Scheme project at the Massachusetts
 Institute of Technology, Department of Electrical Engineering and
@@ -779,6 +779,24 @@ MIT in each case. |#
                                 false))
       (if compiler:code-compression?
          (phase/code-compression))
+      (if (and *rtl-output-all-phases?* *rtl-output-port*)
+         (phase/rtl-file-output "Post Code-Compression"
+                                false
+                                false
+                                false
+                                *rtl-output-port*
+                                false))
+      (if compiler:rtl-instruction-scheduling?
+         (begin
+           (phase/rtl-instruction-scheduling)
+           (phase/lifetime-analysis)
+           (if (and *rtl-output-all-phases?* *rtl-output-port*)
+               (phase/rtl-file-output "Post Instruction-Scheduling"
+                                      false
+                                      false
+                                      false
+                                      *rtl-output-port*
+                                      false))))
       (phase/register-allocation)
       (phase/rtl-optimization-cleanup))))
 \f
@@ -817,6 +835,11 @@ MIT in each case. |#
     (lambda ()
       (code-compression *rtl-graphs*))))
 
+(define (phase/rtl-instruction-scheduling)
+  (compiler-subphase "Instruction Scheduling"
+    (lambda ()
+      (rtl-instruction-scheduling *rtl-graphs*))))
+
 (define (phase/linearization-analysis)
   (compiler-subphase "Linearization Analysis"
     (lambda ()