1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
(*===-- llvm_passbuilder.ml - LLVM OCaml Interface -------------*- OCaml -*-===*
*
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
* See https://llvm.org/LICENSE.txt for license information.
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
*
*===----------------------------------------------------------------------===*)
type llpassbuilder_options
external run_passes
: Llvm.llmodule
-> string
-> Llvm_target.TargetMachine.t
-> llpassbuilder_options
-> (unit, string) result
= "llvm_run_passes"
external create_passbuilder_options : unit -> llpassbuilder_options =
"llvm_create_passbuilder_options"
external passbuilder_options_set_verify_each
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_verify_each"
external passbuilder_options_set_debug_logging
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_debug_logging"
external passbuilder_options_set_loop_interleaving
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_loop_interleaving"
external passbuilder_options_set_loop_vectorization
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_loop_vectorization"
external passbuilder_options_set_slp_vectorization
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_slp_vectorization"
external passbuilder_options_set_loop_unrolling
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_loop_unrolling"
external passbuilder_options_set_forget_all_scev_in_loop_unroll
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_forget_all_scev_in_loop_unroll"
external passbuilder_options_set_licm_mssa_opt_cap
: llpassbuilder_options -> int -> unit =
"llvm_passbuilder_options_set_licm_mssa_opt_cap"
external passbuilder_options_set_licm_mssa_no_acc_for_promotion_cap
: llpassbuilder_options -> int -> unit =
"llvm_passbuilder_options_set_licm_mssa_opt_cap"
external passbuilder_options_set_call_graph_profile
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_call_graph_profile"
external passbuilder_options_set_merge_functions
: llpassbuilder_options -> bool -> unit =
"llvm_passbuilder_options_set_merge_functions"
external passbuilder_options_set_inliner_threshold
: llpassbuilder_options -> int -> unit =
"llvm_passbuilder_options_set_inliner_threshold"
external dispose_passbuilder_options : llpassbuilder_options -> unit =
"llvm_dispose_passbuilder_options"
|