1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-23 20:05:32 +02:00

Replace return primcalls with $values

* module/language/cps/compile-bytecode.scm:
* module/language/cps/contification.scm:
* module/language/cps/slot-allocation.scm:
* module/language/cps/type-fold.scm:
* module/language/cps/verify.scm:
* module/language/tree-il/compile-cps.scm: Never generate a return
  primcall.  Instead use $values.
This commit is contained in:
Andy Wingo 2015-10-28 11:11:23 +00:00
parent 7c9e477b82
commit 2f08838cd6
6 changed files with 7 additions and 17 deletions

View file

@ -136,9 +136,7 @@
(for-each (match-lambda
((src . dst) (emit-mov asm (from-sp dst) (from-sp src))))
(lookup-parallel-moves label allocation))
(emit-return-values asm (1+ (length args))))
(($ $primcall 'return (arg))
(emit-return asm (from-sp (slot arg))))))
(emit-return-values asm (1+ (length args))))))
(define (compile-value label exp dst)
(match exp