diff options
author | Andy Wingo <wingo@pobox.com> | 2015-10-28 11:00:05 +0000 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2015-10-28 11:00:05 +0000 |
commit | 7c9e477b82377834d126dcc6294922b8de9722bd (patch) | |
tree | a8026c70c8aab4717f9f4f2e2be714f49e31c096 /module/language/cps/compile-bytecode.scm | |
parent | 7aee3c74f5f31c6f386c75506f43b42c786a41b4 (diff) | |
download | guile-7c9e477b82377834d126dcc6294922b8de9722bd.tar.gz |
Don't emit redundant reset-frame before return
* module/language/cps/compile-bytecode.scm (compile-function): Don't
emit reset-frame before return-values.
Diffstat (limited to 'module/language/cps/compile-bytecode.scm')
-rw-r--r-- | 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 838fd4d07..a313da7c6 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)))))) |