diff options
-rw-r--r-- | stdlib/optimize.tl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/stdlib/optimize.tl b/stdlib/optimize.tl index 5f81bc10..628a5317 100644 --- a/stdlib/optimize.tl +++ b/stdlib/optimize.tl @@ -123,12 +123,12 @@ (defmeth basic-blocks link-graph (bb) (set bb.root (car bb.list)) - (each ((bl bb.list)) + (each* ((bl bb.list) + (nxbl (append (cdr bl) '(nil)))) (let* ((code bl.insns) (tail (last code)) (linsn (car tail)) - (link-next t) - (nxbl (cadr (memq bl bb.list)))) + (link-next t)) (set bl.next nxbl) (match-case linsn ((jmp @jlabel) |