mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-23 20:05:32 +02:00
Fix slot allocation bug
* module/language/cps/slot-allocation.scm (allocate-slots): Fix dead-after-use computation to use the expression's label and not its continuation.
This commit is contained in:
parent
f8fb13ef8c
commit
61c7264fcc
1 changed files with 3 additions and 2 deletions
|
@ -340,8 +340,9 @@ are comparable with eqv?. A tmp slot may be used."
|
|||
|
||||
(define (visit-exp exp label k live-set)
|
||||
(define (use sym live-set)
|
||||
(if (and (lookup-slot sym allocation) (dead-after-use? sym k dfg))
|
||||
(dead sym k live-set)
|
||||
(if (and (and=> (lookup-slot sym allocation) (cut > <> nargs))
|
||||
(dead-after-use? sym label dfg))
|
||||
(dead sym label live-set)
|
||||
live-set))
|
||||
|
||||
(match exp
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue