package rune

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

Install

dune-project
 Dependency

Authors

Maintainers

Sources

raven-1.0.0.alpha2.tbz
sha256=93abc49d075a1754442ccf495645bc4fdc83e4c66391ec8aca8fa15d2b4f44d2
sha512=5eb958c51f30ae46abded4c96f48d1825f79c7ce03f975f9a6237cdfed0d62c0b4a0774296694def391573d849d1f869919c49008acffca95946b818ad325f6f

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.