14ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov(*===-- llvm_passmgr_builder.ml - LLVM OCaml Interface --------*- OCaml -*-===*
24ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov *
34ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov *                     The LLVM Compiler Infrastructure
44ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov *
54ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov * This file is distributed under the University of Illinois Open Source
64ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov * License. See LICENSE.TXT for details.
74ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov *
84ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov *===----------------------------------------------------------------------===*)
94ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov
104ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovtype t
114ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov
124ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal create : unit -> t
134ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_create"
144ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal set_opt_level : int -> t -> unit
154ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_set_opt_level"
164ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal set_size_level : int -> t -> unit
174ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_set_size_level"
184ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal set_disable_unit_at_a_time : bool -> t -> unit
194ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_set_disable_unit_at_a_time"
204ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal set_disable_unroll_loops : bool -> t -> unit
214ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_set_disable_unroll_loops"
224ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal use_inliner_with_threshold : int -> t -> unit
234ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_use_inliner_with_threshold"
244ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal populate_function_pass_manager
254ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  : [ `Function ] Llvm.PassManager.t -> t -> unit
264ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_populate_function_pass_manager"
274ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal populate_module_pass_manager
284ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  : [ `Module ] Llvm.PassManager.t -> t -> unit
294ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_populate_module_pass_manager"
304ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotovexternal populate_lto_pass_manager
314ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  : [ `Module ] Llvm.PassManager.t -> internalize:bool -> run_inliner:bool -> t -> unit
324ebe64ae7ec729b29964b355face33af0c4ce424Peter Zotov  = "llvm_pmbuilder_populate_lto_pass_manager"