Modified to treat %internal-apply-unchecked like %internal-apply.
authorStephen Adams <edu/mit/csail/zurich/adams>
Mon, 20 Mar 1995 02:02:02 +0000 (02:02 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Mon, 20 Mar 1995 02:02:02 +0000 (02:02 +0000)
v8/src/compiler/midend/dataflow.scm
v8/src/compiler/midend/split.scm
v8/src/compiler/midend/triveval.scm
v8/src/compiler/midend/widen.scm

index a3f1cd22eecfd2250300cd72b800590706858881..c4be446298458611a790513f93bf71039c8b3a5a 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: dataflow.scm,v 1.8 1995/02/11 02:04:02 adams Exp $
+$Id: dataflow.scm,v 1.9 1995/03/20 02:02:02 adams Exp $
 
 Copyright (c) 1994 Massachusetts Institute of Technology
 
@@ -377,7 +377,8 @@ MIT in each case. |#
                (use dataflow/handler/%stack-closure-ref))
              ((eq? operator %heap-closure-set!)
               (use dataflow/handler/%heap-closure-set!))
-              ((eq? operator %internal-apply)
+              ((or (eq? operator %internal-apply)
+                  (eq? operator %internal-apply-unchecked))
                (use dataflow/handler/%internal-apply))
              ((eq? operator %fetch-stack-closure)
                (use dataflow/handler/%fetch-stack-closure))
@@ -608,8 +609,9 @@ MIT in each case. |#
 
 
 (define (dataflow/handler/%internal-apply env graph form rator cont rands)
-  ;; (CALL ',%internal-apply <continuation> 'NARGS <procedure> <value>*)
-  ;;       ------rator------ -----cont----- ----------rands------------
+  ;; (CALL ',%internal-apply           <cont> 'NARGS <procedure> <value>*)
+  ;; (CALL ',%internal-apply-unchecked <cont> 'NARGS <procedure> <value>*)
+  ;;       ------rator------           -cont- ----------rands------------
   ;;
   ;; Treated like a normal call
   rator                                        ; ignore
index cca2a69ab725c6246f2e8ac50a63b0936d26b1f8..f1c23d82d8c265693a39901e948dc835f2225dde 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: split.scm,v 1.3 1994/11/25 23:06:58 adams Exp $
+$Id: split.scm,v 1.4 1995/03/20 02:01:39 adams Exp $
 
 Copyright (c) 1994 Massachusetts Institute of Technology
 
@@ -168,8 +168,9 @@ MIT in each case. |#
               (for-every mutable-call-sites
                 (lambda (site)
                   (let ((form (application/text site)))
-                    ;; FORM is (CALL ',%internal-apply <continuation>
-                    ;;               <nargs> <operator> <operand>...)
+                    ;; FORM is (CALL ',%internal-apply[-unchecked]
+                    ;;               <continuation> <nargs>
+                    ;;               <operator> <operand>...)
                     ;; The debugging information previously associated
                     ;; with the whole call must now be associated with
                     ;; _both_ the BEGIN and the inner CALL.
@@ -219,7 +220,7 @@ MIT in each case. |#
                     ;; direct to the top-level LAMBDA
                     (let ((form (application/text site)))
                       ;; FORM is
-                      ;;   (CALL ',%internal-apply <continuation>
+                      ;;   (CALL ',%internal-apply[-unchecked] <continuation>
                       ;;         <nargs> <operator> <operand>...)
                       (form/rewrite! form
                         (case format
index 253d8300cd84ee9ac638bbdd94f183234e315a0e..7fbe0fd22fa79fd6ce1da7473673e3d52cb891c6 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: triveval.scm,v 1.3 1994/11/26 16:55:36 gjr Exp $
+$Id: triveval.scm,v 1.4 1995/03/20 02:01:28 adams Exp $
 
 Copyright (c) 1994 Massachusetts Institute of Technology
 
@@ -428,6 +428,7 @@ MIT in each case. |#
     (declare-operator %stack-closure-ref stack-closure-ref)
     (declare-operator %fetch-stack-closure fetch-stack-closure)
     (declare-operator %internal-apply funcall)
+    (declare-operator %internal-apply-unchecked funcall)
     (declare-operator %primitive-apply funcall)
     ; (declare-operator %invoke-continuation identity-procedure)
     (declare-operator %vector-index vector-index)
index eb86b2fa8d9021ed898423ca3eddaa24655c3b07..3b906e22b8065b8ac954f286f1f48f11cebff5e5 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: widen.scm,v 1.6 1995/02/27 21:33:26 adams Exp $
+$Id: widen.scm,v 1.7 1995/03/20 02:01:15 adams Exp $
 
 Copyright (c) 1994 Massachusetts Institute of Technology
 
@@ -606,13 +606,15 @@ MIT in each case. |#
 
 (define (widen/handler/%internal-apply
         graph name-map form rator cont rands)
-  ;; (CALL ',%internal-apply <continuation> 'NARGS <procedure> <value>*)
-  ;;       ------ rator ---- ------cont --- --------- rands -----------
+  ;; (CALL ',%internal-apply           <cont> 'NARGS <procedure> <value>*)
+  ;; (CALL ',%internal-apply-unchecked <cont> 'NARGS <procedure> <value>*)
+  ;;       ------ rator ----           -cont- --------- rands -----------
   form                                 ; Not used
   (let ((widened-operands
         (widen/flatten-expr* graph name-map (cddr rands))))
     (widen/simple-rewrite
-     `(CALL ,rator ,(widen->expr graph name-map cont)
+     `(CALL ,rator
+           ,(widen->expr graph name-map cont)
            ',(length widened-operands)
            ,(widen->expr graph name-map (second rands))
            . ,widened-operands)
@@ -668,7 +670,8 @@ MIT in each case. |#
                (use widen/handler/%heap-closure-ref))
               ((eq? operator %stack-closure-ref)
                (use widen/handler/%stack-closure-ref))
-              ((eq? operator %internal-apply)
+              ((or (eq? operator %internal-apply)
+                  (eq? operator %internal-apply-unchecked))
                (use widen/handler/%internal-apply))
              ((eq? operator %fetch-stack-closure)
                (use widen/handler/%fetch-stack-closure))