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