package rune
Source file llvm_passbuilder.ml
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"