Module Llvm_scalar_opts

module Llvm_scalar_opts: sig .. end
Scalar Transforms.

This interface provides an OCaml API for LLVM scalar transforms, the classes in the LLVMScalarOpts library.


val add_aggressive_dce : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createAggressiveDCEPass function.
val add_alignment_from_assumptions : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createAlignmentFromAssumptionsPass function.
val add_cfg_simplification : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createCFGSimplificationPass function.
val add_dead_store_elimination : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See llvm::createDeadStoreEliminationPass function.
val add_scalarizer : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See llvm::createScalarizerPass function.
val add_merged_load_store_motion : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See llvm::createMergedLoadStoreMotionPass function.
val add_gvn : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createGVNPass function.
val add_ind_var_simplification : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createIndVarSimplifyPass function.
val add_instruction_combination : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createInstructionCombiningPass function.
val add_jump_threading : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createJumpThreadingPass function.
val add_licm : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLICMPass function.
val add_loop_deletion : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopDeletionPass function.
val add_loop_idiom : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopIdiomPass function.
val add_loop_rotation : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopRotatePass function.
val add_loop_reroll : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopRerollPass function.
val add_loop_unroll : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopUnrollPass function.
val add_loop_unswitch : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLoopUnswitchPass function.
val add_memcpy_opt : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createMemCpyOptPass function.
val add_partially_inline_lib_calls : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createPartiallyInlineLibCallsPass function.
val add_lower_switch : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLowerSwitchPass function.
val add_memory_to_register_promotion : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createPromoteMemoryToRegisterPass function.
val add_reassociation : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createReassociatePass function.
val add_sccp : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createSCCPPass function.
val add_scalar_repl_aggregation : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createSROAPass function.
val add_scalar_repl_aggregation_ssa : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createSROAPass function.
val add_scalar_repl_aggregation_with_threshold : int -> [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createSROAPass function.
val add_lib_call_simplification : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createSimplifyLibCallsPass function.
val add_tail_call_elimination : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createTailCallEliminationPass function.
val add_constant_propagation : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createConstantPropagationPass function.
val add_memory_to_register_demotion : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createDemoteMemoryToRegisterPass function.
val add_verifier : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createVerifierPass function.
val add_correlated_value_propagation : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createCorrelatedValuePropagationPass function.
val add_early_cse : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createEarlyCSE function.
val add_lower_expect_intrinsic : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createLowerExpectIntrinsicPass function.
val add_type_based_alias_analysis : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createTypeBasedAliasAnalysisPass function.
val add_scoped_no_alias_alias_analysis : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createScopedNoAliasAAPass function.
val add_basic_alias_analysis : [< Llvm.PassManager.any ] Llvm.PassManager.t -> unit
See the llvm::createBasicAliasAnalysisPass function.