summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--stdlib/optimize.tl5
1 files changed, 4 insertions, 1 deletions
diff --git a/stdlib/optimize.tl b/stdlib/optimize.tl
index d43cfbd1..4af062f9 100644
--- a/stdlib/optimize.tl
+++ b/stdlib/optimize.tl
@@ -226,7 +226,10 @@
((@(or ret abscsr) @nreg @reg)
(refs li insn reg nreg))
((catch @esreg @eareg @syreg @descreg . @nil)
- (refs li insn esreg eareg syreg descreg))
+ ;; Not quite correct: a live-info has only one def
+ (def li insn esreg)
+ (def li insn eareg)
+ (refs li insn syreg descreg))
((handle @funreg @syreg)
(refs li insn funreg syreg))
((@(or getv getvb getfb getl1b getlx getf) @def . @nil)