diff options
| author | Maxime Dénès | 2020-04-01 11:09:13 +0200 |
|---|---|---|
| committer | Maxime Dénès | 2020-04-01 11:09:13 +0200 |
| commit | 828b79f744ffc1f292a77a80553906544c1c0cfb (patch) | |
| tree | f267db7f0d4895e14548281d59e61cd11379ebf4 /lib | |
| parent | eacddd7054ddc04eafc8292ae80be84649b940d1 (diff) | |
| parent | acba2419a4cebb2b55bad2aefa2062640ffe8828 (diff) | |
Merge PR #11306: Centralize the flag handling native compilation.
Ack-by: SkySkimmer
Reviewed-by: maximedenes
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/flags.ml | 8 | ||||
| -rw-r--r-- | lib/flags.mli | 5 |
2 files changed, 13 insertions, 0 deletions
diff --git a/lib/flags.ml b/lib/flags.ml index 2832ddd27a..1d9d6d49bc 100644 --- a/lib/flags.ml +++ b/lib/flags.ml @@ -82,3 +82,11 @@ let get_inline_level () = !inline_level let profile_ltac = ref false let profile_ltac_cutoff = ref 2.0 + +let native_compiler = ref None +let get_native_compiler () = match !native_compiler with +| None -> assert false +| Some b -> b +let set_native_compiler b = + let () = assert (!native_compiler == None) in + native_compiler := Some b diff --git a/lib/flags.mli b/lib/flags.mli index a68be196d7..30d1b5b2bd 100644 --- a/lib/flags.mli +++ b/lib/flags.mli @@ -90,6 +90,11 @@ val without_option : bool ref -> ('a -> 'b) -> 'a -> 'b (** Temporarily extends the reference to a list *) val with_extra_values : 'c list ref -> 'c list -> ('a -> 'b) -> 'a -> 'b +(** Native compilation flag *) +val get_native_compiler : unit -> bool +val set_native_compiler : bool -> unit +(** Must be set exactly once at initialization time. *) + (** Level of inlining during a functor application *) val set_inline_level : int -> unit val get_inline_level : unit -> int |
