summaryrefslogtreecommitdiff
path: root/module/language/cps.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2014-01-09 19:52:58 +0100
committerAndy Wingo <wingo@pobox.com>2014-01-11 16:01:11 +0100
commit7ab76a830bfbc7fcd45ec4780ba661e0c61bacd6 (patch)
treefecbd6bcd5f87c86f419c698e2772822a0f38136 /module/language/cps.scm
parent146ce52d2169a5002a0509cb4a21d3203d554a55 (diff)
downloadguile-7ab76a830bfbc7fcd45ec4780ba661e0c61bacd6.tar.gz
Remove "pop" from $prompt
* module/language/cps.scm: * module/language/cps/closure-conversion.scm: * module/language/cps/compile-bytecode.scm: * module/language/cps/dfg.scm: * module/language/cps/slot-allocation.scm: * module/language/cps/verify.scm: * module/language/tree-il/compile-cps.scm: Remove "pop" member from $prompt data type, as it is no longer used.
Diffstat (limited to 'module/language/cps.scm')
-rw-r--r--module/language/cps.scm19
1 files changed, 9 insertions, 10 deletions
diff --git a/module/language/cps.scm b/module/language/cps.scm
index 57d95d410..8aac42b4a 100644
--- a/module/language/cps.scm
+++ b/module/language/cps.scm
@@ -1,6 +1,6 @@
;;; Continuation-passing style (CPS) intermediate language (IL)
-;; Copyright (C) 2013 Free Software Foundation, Inc.
+;; Copyright (C) 2013, 2014 Free Software Foundation, Inc.
;;;; This library is free software; you can redistribute it and/or
;;;; modify it under the terms of the GNU Lesser General Public
@@ -85,8 +85,7 @@
;;; - $prompt continues to the body of the prompt, having pushed on a
;;; prompt whose handler will continue at its "handler"
;;; continuation. The continuation of the prompt is responsible for
-;;; popping the prompt. A $prompt also records the continuation
-;;; that pops the prompt, to make various static analyses easier.
+;;; popping the prompt.
;;;
;;; In summary:
;;;
@@ -185,7 +184,7 @@
(define-cps-type $call proc args)
(define-cps-type $primcall name args)
(define-cps-type $values args)
-(define-cps-type $prompt escape? tag handler pop)
+(define-cps-type $prompt escape? tag handler)
(define-syntax let-gensyms
(syntax-rules ()
@@ -240,8 +239,8 @@
((_ ($primcall name args)) (make-$primcall name args))
((_ ($values (arg ...))) (make-$values (list arg ...)))
((_ ($values args)) (make-$values args))
- ((_ ($prompt escape? tag handler pop))
- (make-$prompt escape? tag handler pop))))
+ ((_ ($prompt escape? tag handler))
+ (make-$prompt escape? tag handler))))
(define-syntax build-cps-term
(syntax-rules (unquote $letk $letk* $letconst $letrec $continue)
@@ -341,8 +340,8 @@
(build-cps-exp ($primcall name arg)))
(('values arg ...)
(build-cps-exp ($values arg)))
- (('prompt escape? tag handler pop)
- (build-cps-exp ($prompt escape? tag handler pop)))
+ (('prompt escape? tag handler)
+ (build-cps-exp ($prompt escape? tag handler)))
(_
(error "unexpected cps" exp))))
@@ -397,8 +396,8 @@
`(primcall ,name ,@args))
(($ $values args)
`(values ,@args))
- (($ $prompt escape? tag handler pop)
- `(prompt ,escape? ,tag ,handler ,pop))
+ (($ $prompt escape? tag handler)
+ `(prompt ,escape? ,tag ,handler))
(_
(error "unexpected cps" exp))))