summaryrefslogtreecommitdiff
path: root/module/language/cps/effects-analysis.scm
diff options
context:
space:
mode:
Diffstat (limited to 'module/language/cps/effects-analysis.scm')
-rw-r--r--module/language/cps/effects-analysis.scm16
1 files changed, 15 insertions, 1 deletions
diff --git a/module/language/cps/effects-analysis.scm b/module/language/cps/effects-analysis.scm
index 250aec78a..edba3669d 100644
--- a/module/language/cps/effects-analysis.scm
+++ b/module/language/cps/effects-analysis.scm
@@ -305,7 +305,7 @@ the LABELS that are clobbered by the effects of LABEL."
((null? arg))
((false? arg))
((nil? arg))
- ((heap-object? arg))
+ ((thob? arg))
((pair? arg))
((symbol? arg))
((variable? arg))
@@ -363,6 +363,11 @@ the LABELS that are clobbered by the effects of LABEL."
((ann . size)
(&allocate
(annotation->memory-kind ann)))))
+ ((tagged-allocate-words/immediate)
+ (match param
+ ((ann . size)
+ (&allocate
+ (annotation->memory-kind ann)))))
((scm-ref obj idx) (&read-object
(annotation->memory-kind param)))
((scm-ref/tag obj) (&read-field
@@ -371,6 +376,10 @@ the LABELS that are clobbered by the effects of LABEL."
((ann . idx)
(&read-field
(annotation->memory-kind ann) idx))))
+ ((tagged-scm-ref/immediate obj) (match param
+ ((ann . idx)
+ (&read-field
+ (annotation->memory-kind ann) idx))))
((scm-set! obj idx val) (&write-object
(annotation->memory-kind param)))
((scm-set/tag! obj val) (&write-field
@@ -379,6 +388,11 @@ the LABELS that are clobbered by the effects of LABEL."
((ann . idx)
(&write-field
(annotation->memory-kind ann) idx))))
+ ((tagged-scm-set!/immediate obj val)
+ (match param
+ ((ann . idx)
+ (&write-field
+ (annotation->memory-kind ann) idx))))
((word-ref obj idx) (&read-object
(annotation->memory-kind param)))
((word-ref/immediate obj) (match param