diff src/mono_reduce.sml @ 319:1fd2a29a7c85

Improve linear-let optimization
author Adam Chlipala <adamc@hcoop.net>
date Thu, 11 Sep 2008 11:44:46 -0400
parents 60907c06b4c4
children e976b187d73a
line wrap: on
line diff
--- a/src/mono_reduce.sml	Thu Sep 11 11:30:39 2008 -0400
+++ b/src/mono_reduce.sml	Thu Sep 11 11:44:46 2008 -0400
@@ -213,6 +213,7 @@
       | ESome (_, e) => summarize d e
       | EFfi _ => []
       | EFfiApp (_, _, es) => List.concat (map (summarize d) es)
+      | EApp ((EFfi _, _), e) => summarize d e
       | EApp _ => [Unsure]
       | EAbs _ => []
 
@@ -244,7 +245,7 @@
 
       | EQuery {query, body, initial, ...} =>
         List.concat [summarize d query,
-                     summarize d body,
+                     summarize (d + 2) body,
                      summarize d initial,
                      [ReadDb]]