diff options
| author | Robert Norton | 2019-11-21 13:10:02 +0000 |
|---|---|---|
| committer | Robert Norton | 2019-11-21 13:15:29 +0000 |
| commit | 8e8df5b7c6f914651d1da5baa4cb2b3c058da720 (patch) | |
| tree | faef5bc7af30f3e27efe6644590732db867d98fd /src | |
| parent | 1b27222cd06d824cf72d339d5acecf4d521ddd0f (diff) | |
Implement -cycle-limit option for OCaml emulator similar to one for C.
Diffstat (limited to 'src')
| -rw-r--r-- | src/sail_lib.ml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/sail_lib.ml b/src/sail_lib.ml index 8251f9b4..03994657 100644 --- a/src/sail_lib.ml +++ b/src/sail_lib.ml @@ -17,6 +17,14 @@ let opt_trace = ref false let trace_depth = ref 0 let random = ref false + +let opt_cycle_limit = ref 0 +let cycle_count = ref 0 + +let cycle_limit_reached () = + cycle_count := !cycle_count + 1; + !opt_cycle_limit != 0 && !cycle_count >= !opt_cycle_limit + let sail_call (type t) (f : _ -> t) = let module M = struct exception Return of t end |
