public static extern void AddTypeBasedAliasAnalysisPass(LLVMPassManagerRef @PM);
public static extern void AddStripSymbolsPass(LLVMPassManagerRef @PM);
public static extern void AddTargetData(LLVMTargetDataRef @TD, LLVMPassManagerRef @PM);
public static extern void AddScopedNoAliasAAPass(LLVMPassManagerRef @PM);
public static extern void AddSLPVectorizePass(LLVMPassManagerRef @PM);
public static extern void PassManagerBuilderPopulateModulePassManager(LLVMPassManagerBuilderRef @PMB, LLVMPassManagerRef @PM);
public PassManager(LLVMModuleRef module) { this.instance = LLVM.CreateFunctionPassManagerForModule(module); }
public void PopulateModulePassManager(LLVMPassManagerRef PM) => LLVM.PassManagerBuilderPopulateModulePassManager(this, PM);
public void PopulateLTOPassManager(LLVMPassManagerRef PM, int Internalize, int RunInliner) { LLVM.PassManagerBuilderPopulateLTOPassManager(this, PM, Internalize, RunInliner); }
public static extern void AddDataFlowSanitizerPass(LLVMPassManagerRef @PM);
public void PopulateFunctionPassManager(LLVMPassManagerRef PM) => LLVM.PassManagerBuilderPopulateFunctionPassManager(this, PM);
public static extern void AddMemorySanitizerPass(LLVMPassManagerRef @PM);
public static extern void AddThreadSanitizerPass(LLVMPassManagerRef @PM);
public static extern void AddAddressSanitizerModulePass(LLVMPassManagerRef @PM);
public static extern void DisposePassManager(LLVMPassManagerRef @PM);
public static extern void AddLoopUnrollPass(LLVMPassManagerRef @PM);
public static extern void PassManagerBuilderPopulateFunctionPassManager(LLVMPassManagerBuilderRef @PMB, LLVMPassManagerRef @PM);
public static extern void AddLowerExpectIntrinsicPass(LLVMPassManagerRef @PM);
public static extern LLVMBool RunPassManager(LLVMPassManagerRef @PM, LLVMModuleRef @M);
public static extern void AddLowerSwitchPass(LLVMPassManagerRef @PM);
public static extern void AddAddressSanitizerFunctionPass(LLVMPassManagerRef @PM);
public static extern void AddMemCpyOptPass(LLVMPassManagerRef @PM);
public static extern void AddSimplifyLibCallsPass(LLVMPassManagerRef @PM);
public static extern void AddMergedLoadStoreMotionPass(LLVMPassManagerRef @PM);
public static extern void AddStripDeadPrototypesPass(LLVMPassManagerRef @PM);
public static extern void AddPartiallyInlineLibCallsPass(LLVMPassManagerRef @PM);
public static extern void AddTailCallEliminationPass(LLVMPassManagerRef @PM);
public static extern void AddPromoteMemoryToRegisterPass(LLVMPassManagerRef @PM);
public static extern void AddTargetLibraryInfo(LLVMTargetLibraryInfoRef @TLI, LLVMPassManagerRef @PM);
public static extern void AddPruneEHPass(LLVMPassManagerRef @PM);
public static extern void AddVerifierPass(LLVMPassManagerRef @PM);
public static extern void AddReassociatePass(LLVMPassManagerRef @PM);
public static extern LLVMBool InitializeFunctionPassManager(LLVMPassManagerRef @FPM);
public static extern void AddScalarizerPass(LLVMPassManagerRef @PM);
public static extern void PassManagerBuilderPopulateLTOPassManager(LLVMPassManagerBuilderRef @PMB, LLVMPassManagerRef @PM, LLVMBool @Internalize, LLVMBool @RunInliner);
public static extern void AddScalarReplAggregatesPassSSA(LLVMPassManagerRef @PM);
public static extern LLVMBool RunFunctionPassManager(LLVMPassManagerRef @FPM, LLVMValueRef @F);
public static extern void AddScalarReplAggregatesPassWithThreshold(LLVMPassManagerRef @PM, int @Threshold);
public PassManager() { this.instance = LLVM.CreatePassManager(); }
public static extern void AddSCCPPass(LLVMPassManagerRef @PM);
public PassManager(LLVMModuleProviderRef moduleProvider) { this.instance = LLVM.CreateFunctionPassManager(moduleProvider); }
public static extern void AddInstructionCombiningPass(LLVMPassManagerRef PM);