diff options
author | Adam Chlipala <adamc@hcoop.net> | 2008-11-25 10:05:44 -0500 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2008-11-25 10:05:44 -0500 |
commit | 940865b04fa534983982b261386a3b1926bd5531 (patch) | |
tree | fc3097de1fda1a8cf47dbbeaddc9dc1df9ba6035 /src/compiler.sml | |
parent | 261ebaa5168b307ad38825c95d60c5bea5d9858f (diff) |
Fusing writes with recursive function calls
Diffstat (limited to 'src/compiler.sml')
-rw-r--r-- | src/compiler.sml | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/compiler.sml b/src/compiler.sml index 6a6c4391..aac4a924 100644 --- a/src/compiler.sml +++ b/src/compiler.sml @@ -523,12 +523,23 @@ val toMono_shake = transform mono_shake "mono_shake1" o toMono_reduce val toMono_opt2 = transform mono_opt "mono_opt2" o toMono_shake +val fuse = { + func = Fuse.fuse, + print = MonoPrint.p_file MonoEnv.empty +} + +val toFuse = transform fuse "fuse" o toMono_opt2 + +val toUntangle2 = transform untangle "untangle2" o toFuse + +val toMono_shake2 = transform mono_shake "mono_shake2" o toUntangle2 + val pathcheck = { func = (fn file => (PathCheck.check file; file)), print = MonoPrint.p_file MonoEnv.empty } -val toPathcheck = transform pathcheck "pathcheck" o toMono_opt2 +val toPathcheck = transform pathcheck "pathcheck" o toMono_shake2 val cjrize = { func = Cjrize.cjrize, |