diff options
| author | Brian Campbell | 2017-11-14 12:33:14 +0000 |
|---|---|---|
| committer | Brian Campbell | 2017-11-14 12:33:14 +0000 |
| commit | 7dc2a9aa2e140eb4475da65e73be5952c0d5c26e (patch) | |
| tree | 25ad519094acd4be8321fb65328f61b949c6345a /src/sail.ml | |
| parent | 29eb3472dfb65f39f558baff4c56688f03016592 (diff) | |
Automatic analysis for monomorphisation
Diffstat (limited to 'src/sail.ml')
| -rw-r--r-- | src/sail.ml | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/sail.ml b/src/sail.ml index 68dbcdbe..e7e965ba 100644 --- a/src/sail.ml +++ b/src/sail.ml @@ -114,6 +114,12 @@ let options = Arg.align ([ ( "-ddump_raw_mono_ast", Arg.Set opt_ddump_raw_mono_ast, " (debug) dump the monomorphised ast before type-checking"); + ( "-dmono_analysis", + Arg.Set_int opt_dmono_analysis, + " (debug) dump information about monomorphisation analysis: 0 silent, 3 max"); + ( "-auto_mono", + Arg.Set opt_auto_mono, + " automatically infer how to monomorphise code"); ( "-verbose", Arg.Set opt_print_verbose, " (debug) pretty-print the input to standard output"); @@ -168,9 +174,9 @@ let main() = let (ast, type_envs) = check_ast ast in let (ast, type_envs) = - match !opt_mono_split with - | [] -> ast, type_envs - | locs -> monomorphise_ast locs ast + match !opt_mono_split, !opt_auto_mono with + | [], false -> ast, type_envs + | locs, _ -> monomorphise_ast locs type_envs ast in let ast = |
