package rune

  1. Overview
  2. Docs
Automatic differentiation and JIT compilation for OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

raven-1.0.0.alpha1.tbz
sha256=8e277ed56615d388bc69c4333e43d1acd112b5f2d5d352e2453aef223ff59867
sha512=369eda6df6b84b08f92c8957954d107058fb8d3d8374082e074b56f3a139351b3ae6e3a99f2d4a4a2930dd950fd609593467e502368a13ad6217b571382da28c

doc/llvm_passbuilder/Llvm_passbuilder/index.html

Module Llvm_passbuilderSource

Sourcetype llpassbuilder_options
Sourceval run_passes : Llvm.llmodule -> string -> Llvm_target.TargetMachine.t -> llpassbuilder_options -> (unit, string) Stdlib.result

run_passes m passes tm opts runs a set of passes over a module. The format of the string passes is the same as opt's -passes argument for the new pass manager. Individual passes may be specified, separated by commas. Full pipelines may also be invoked. See LLVMRunPasses.

Sourceval create_passbuilder_options : unit -> llpassbuilder_options

Creates a new set of options for a PassBuilder. See llvm::LLVMPassBuilderOptions::LLVMPassBuilderOptions.

Sourceval passbuilder_options_set_verify_each : llpassbuilder_options -> bool -> unit

Toggles adding the VerifierPass for the PassBuilder. See llvm::LLVMPassBuilderOptions::VerifyEach.

Sourceval passbuilder_options_set_debug_logging : llpassbuilder_options -> bool -> unit

Toggles debug logging. See llvm::LLVMPassBuilderOptions::DebugLogging.

Sourceval passbuilder_options_set_loop_interleaving : llpassbuilder_options -> bool -> unit

Tuning option to set loop interleaving on/off, set based on opt level. See llvm::PipelineTuningOptions::LoopInterleaving.

Sourceval passbuilder_options_set_loop_vectorization : llpassbuilder_options -> bool -> unit

Tuning option to enable/disable loop vectorization, set based on opt level. See llvm::PipelineTuningOptions::LoopVectorization.

Sourceval passbuilder_options_set_slp_vectorization : llpassbuilder_options -> bool -> unit

Tuning option to enable/disable slp loop vectorization, set based on opt level. See llvm::PipelineTuningOptions::SLPVectorization.

Sourceval passbuilder_options_set_loop_unrolling : llpassbuilder_options -> bool -> unit

Tuning option to enable/disable loop unrolling. Its default value is true. See llvm::PipelineTuningOptions::LoopUnrolling.

Sourceval passbuilder_options_set_forget_all_scev_in_loop_unroll : llpassbuilder_options -> bool -> unit

Tuning option to forget all SCEV loops in LoopUnroll. See llvm::PipelineTuningOptions::ForgetAllSCEVInLoopUnroll.

Sourceval passbuilder_options_set_licm_mssa_opt_cap : llpassbuilder_options -> int -> unit

Tuning option to cap the number of calls to retrive clobbering accesses in MemorySSA, in LICM. See llvm::PipelineTuningOptions::LicmMssaOptCap.

Sourceval passbuilder_options_set_licm_mssa_no_acc_for_promotion_cap : llpassbuilder_options -> int -> unit

Tuning option to disable promotion to scalars in LICM with MemorySSA, if the number of accesses is too large. See llvm::PipelineTuningOptions::LicmMssaNoAccForPromotionCap.

Sourceval passbuilder_options_set_call_graph_profile : llpassbuilder_options -> bool -> unit

Tuning option to enable/disable call graph profile. See llvm::PipelineTuningOptions::CallGraphProfile.

Sourceval passbuilder_options_set_merge_functions : llpassbuilder_options -> bool -> unit

Tuning option to enable/disable function merging. See llvm::PipelineTuningOptions::MergeFunctions.

Sourceval passbuilder_options_set_inliner_threshold : llpassbuilder_options -> int -> unit

Tuning option to override the default inliner threshold. See llvm::PipelineTuningOptions::InlinerThreshold.

Sourceval dispose_passbuilder_options : llpassbuilder_options -> unit

Disposes of the options.