mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
Fix baseline compiler bugs
* module/language/tree-il/compile-bytecode.scm (compile-closure): Fix FP-relative computation for "receive" target. Fix value-at syntax in conditional.
This commit is contained in:
parent
c49ccfbc3d
commit
04e3cece45
1 changed files with 3 additions and 3 deletions
|
@ -1111,8 +1111,8 @@ in the frame with for the lambda-case clause @var{clause}."
|
|||
(let ((proc-slot (let ((env (push-frame env)))
|
||||
(fold for-push (for-push proc env) args)
|
||||
(stack-height env))))
|
||||
(emit-call asm proc-slot (length args))
|
||||
(emit-receive src dst proc-slot frame-size)))
|
||||
(emit-call asm proc-slot (1+ (length args)))
|
||||
(emit-receive asm (stack-height base) proc-slot frame-size)))
|
||||
|
||||
(($ <primcall> src (? variadic-constructor? name) args)
|
||||
;; Stage result in 0 to avoid stompling args.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue