From 2672b181ba4252483198867649b1ec76b7919fdb Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Jun 2018 16:59:35 -0400 Subject: [PATCH] Test optimizing simple calls to map/for-each --- scheme/cyclone/transforms.sld | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scheme/cyclone/transforms.sld b/scheme/cyclone/transforms.sld index 6aafdc96..0dade884 100644 --- a/scheme/cyclone/transforms.sld +++ b/scheme/cyclone/transforms.sld @@ -934,6 +934,10 @@ (cons 'Cyc-fast-list-3 (map (lambda (a) (convert a renamed)) (cdr ast)))) ((and (eq? (car ast) 'list) (= (length ast) 5)) (cons 'Cyc-fast-list-4 (map (lambda (a) (convert a renamed)) (cdr ast)))) + ((and (eq? (car ast) 'for-each) (= (length ast) 3)) + (cons 'Cyc-for-each-loop-1 (map (lambda (a) (convert a renamed)) (cdr ast)))) + ((and (eq? (car ast) 'map) (= (length ast) 3)) + (cons 'Cyc-map-loop-1 (map (lambda (a) (convert a renamed)) (cdr ast)))) ;; Regular case, alpha convert everything (else (regular-case)))))