Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | SSA2Simplify |
2 | ============ | |
3 | ||
4 | The optimization passes for the <:SSA2:> <:IntermediateLanguage:> are | |
5 | collected and controlled by the `Simplify2` functor | |
6 | (<!ViewGitFile(mlton,master,mlton/ssa/simplify2.sig)>, | |
7 | <!ViewGitFile(mlton,master,mlton/ssa/simplify2.fun)>). | |
8 | ||
9 | The following optimization passes are implemented: | |
10 | ||
11 | * <:DeepFlatten:> | |
12 | * <:RefFlatten:> | |
13 | * <:RemoveUnused:> | |
14 | * <:Zone:> | |
15 | ||
16 | There are additional analysis and rewrite passes that augment many of the other optimization passes: | |
17 | ||
18 | * <:Restore:> | |
19 | * <:Shrink:> | |
20 | ||
21 | The optimization passes can be controlled from the command-line by the options | |
22 | ||
23 | * `-diag-pass <pass>` -- keep diagnostic info for pass | |
24 | * `-disable-pass <pass>` -- skip optimization pass (if normally performed) | |
25 | * `-enable-pass <pass>` -- perform optimization pass (if normally skipped) | |
26 | * `-keep-pass <pass>` -- keep the results of pass | |
27 | * `-loop-passes <n>` -- loop optimization passes | |
28 | * `-ssa2-passes <passes>` -- ssa optimization passes |