[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 07/27: Don't emit redundant reset-frame before return
From: |
Andy Wingo |
Subject: |
[Guile-commits] 07/27: Don't emit redundant reset-frame before return |
Date: |
Wed, 11 Nov 2015 11:39:08 +0000 |
wingo pushed a commit to branch master
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 master updated (c99f9ba -> ac5a05d), Andy Wingo, 2015/11/11
- [Guile-commits] 22/27: Add new pass to specialize "add" into "fadd" where possible, Andy Wingo, 2015/11/11
- [Guile-commits] 27/27: Bump bytecode version, Andy Wingo, 2015/11/11
- [Guile-commits] 04/27: Run CSE to clean up after closure conversion, Andy Wingo, 2015/11/11
- [Guile-commits] 01/27: Bootstrap build doesn't have to expand CPS optimizations, Andy Wingo, 2015/11/11
- [Guile-commits] 05/27: Fix slot-allocation to make 'return' not need to alloc-frame, Andy Wingo, 2015/11/11
- [Guile-commits] 07/27: Don't emit redundant reset-frame before return,
Andy Wingo <=
- [Guile-commits] 11/27: Remove use of return in disassembler.scm, Andy Wingo, 2015/11/11
- [Guile-commits] 10/27: rtl.test uses return-values, Andy Wingo, 2015/11/11
- [Guile-commits] 13/27: Treat tail $values as generating lazy allocations, Andy Wingo, 2015/11/11
- [Guile-commits] 14/27: VM support for raw slots, Andy Wingo, 2015/11/11
- [Guile-commits] 15/27: Reflection support for unboxed f64 slots, Andy Wingo, 2015/11/11
- [Guile-commits] 06/27: return-values opcode resets the frame, Andy Wingo, 2015/11/11
- [Guile-commits] 20/27: Scalar replacement for f64->scm, Andy Wingo, 2015/11/11
- [Guile-commits] 21/27: Add fadd, fsub, fmul, fdiv instructions, Andy Wingo, 2015/11/11
- [Guile-commits] 23/27: Fix slot representation computation for fadd, fmul, etc, Andy Wingo, 2015/11/11
- [Guile-commits] 19/27: bv-{f32, f64}-{ref, set!} operate on raw f64 values, Andy Wingo, 2015/11/11