[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 08/21: Don't emit redundant reset-frame before return
From: |
Andy Wingo |
Subject: |
[Guile-commits] 08/21: Don't emit redundant reset-frame before return |
Date: |
Wed, 28 Oct 2015 22:31:17 +0000 |
wingo pushed a commit to branch wip-2.1.2
in repository guile.
commit 7c9e477b82377834d126dcc6294922b8de9722bd
Author: Andy Wingo <address@hidden>
Date: Wed Oct 28 11:00:05 2015 +0000
Don't emit redundant reset-frame before return
* module/language/cps/compile-bytecode.scm (compile-function): Don't
emit reset-frame before return-values.
---
module/language/cps/compile-bytecode.scm | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/module/language/cps/compile-bytecode.scm
b/module/language/cps/compile-bytecode.scm
index 838fd4d..a313da7 100644
--- a/module/language/cps/compile-bytecode.scm
+++ b/module/language/cps/compile-bytecode.scm
@@ -123,7 +123,6 @@
(lookup-parallel-moves label allocation))
(emit-tail-call-label asm (1+ (length args)) k))
(($ $values ())
- (emit-reset-frame asm 1)
(emit-return-values asm 1))
(($ $values (arg))
(if (maybe-slot arg)
@@ -137,7 +136,6 @@
(for-each (match-lambda
((src . dst) (emit-mov asm (from-sp dst) (from-sp src))))
(lookup-parallel-moves label allocation))
- (emit-reset-frame asm (1+ (length args)))
(emit-return-values asm (1+ (length args))))
(($ $primcall 'return (arg))
(emit-return asm (from-sp (slot arg))))))
- [Guile-commits] branch wip-2.1.2 created (now b5b6721), Andy Wingo, 2015/10/28
- [Guile-commits] 01/21: Release v2.1.1, Andy Wingo, 2015/10/28
- [Guile-commits] 02/21: Bootstrap build doesn't have to expand CPS optimizations, Andy Wingo, 2015/10/28
- [Guile-commits] 05/21: Run CSE to clean up after closure conversion, Andy Wingo, 2015/10/28
- [Guile-commits] 03/21: Revert "Bootstrap build doesn't have to expand CPS optimizations", Andy Wingo, 2015/10/28
- [Guile-commits] 06/21: Fix slot-allocation to make 'return' not need to alloc-frame, Andy Wingo, 2015/10/28
- [Guile-commits] 08/21: Don't emit redundant reset-frame before return,
Andy Wingo <=
- [Guile-commits] 07/21: return-values opcode resets the frame, Andy Wingo, 2015/10/28
- [Guile-commits] 11/21: rtl.test uses return-values, Andy Wingo, 2015/10/28
- [Guile-commits] 10/21: Always emit return-values, Andy Wingo, 2015/10/28
- [Guile-commits] 12/21: Remove use of return in disassembler.scm, Andy Wingo, 2015/10/28
- [Guile-commits] 04/21: CSE can run on first-order CPS, Andy Wingo, 2015/10/28
- [Guile-commits] 09/21: Replace return primcalls with $values, Andy Wingo, 2015/10/28
- [Guile-commits] 13/21: Remove return opcode, Andy Wingo, 2015/10/28
- [Guile-commits] 14/21: Treat tail $values as generating lazy allocations, Andy Wingo, 2015/10/28
- [Guile-commits] 17/21: Stack slots can hold a double, Andy Wingo, 2015/10/28
- [Guile-commits] 18/21: Add VM ops to pack and unpack raw f64 values., Andy Wingo, 2015/10/28