diff options
Diffstat (limited to 'src/librustc/lib/llvm.rs')
| -rw-r--r-- | src/librustc/lib/llvm.rs | 202 |
1 files changed, 6 insertions, 196 deletions
diff --git a/src/librustc/lib/llvm.rs b/src/librustc/lib/llvm.rs index fc655ed1370..a12a8be3b11 100644 --- a/src/librustc/lib/llvm.rs +++ b/src/librustc/lib/llvm.rs @@ -1682,8 +1682,14 @@ pub mod llvm { pub unsafe fn LLVMFinalizeFunctionPassManager(FPM:PassManagerRef) -> Bool; #[fast_ffi] + pub unsafe fn LLVMInitializePasses(); + + #[fast_ffi] pub unsafe fn LLVMAddPass(PM:PassManagerRef,P:PassRef); + #[fast_ffi] + pub unsafe fn LLVMCreatePass(PassName:*c_char) -> PassRef; + /** Adds a verification pass. */ #[fast_ffi] pub unsafe fn LLVMAddVerifierPass(PM: PassManagerRef); @@ -1926,202 +1932,6 @@ pub mod llvm { AlignStack: Bool, Dialect: c_uint) -> ValueRef; - // LLVM Passes - - #[fast_ffi] - pub fn LLVMCreateStripSymbolsPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateStripNonDebugSymbolsPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateStripDebugDeclarePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateStripDeadDebugInfoPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateConstantMergePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGlobalOptimizerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGlobalDCEPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateAlwaysInlinerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePruneEHPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateInternalizePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDeadArgEliminationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDeadArgHackingPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateArgumentPromotionPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateIPConstantPropagationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateIPSCCPPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopExtractorPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateSingleLoopExtractorPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBlockExtractorPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateStripDeadPrototypesPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateFunctionAttrsPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateMergeFunctionsPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePartialInliningPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateMetaRenamerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBarrierNoopPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateFunctionInliningPass(Threshold:c_int) -> PassRef; - #[fast_ffi] - pub fn LLVMCreateEdgeProfilerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateOptimalEdgeProfilerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePathProfilerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGCOVProfilerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBoundsCheckingPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateConstantPropagationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateSCCPPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDeadInstEliminationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDeadCodeEliminationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDeadStoreEliminationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateAggressiveDCEPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateSROAPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateScalarReplAggregatesPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateIndVarSimplifyPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateInstructionCombiningPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLICMPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopStrengthReducePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGlobalMergePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopUnswitchPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopInstSimplifyPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopUnrollPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopRotatePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopIdiomPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePromoteMemoryToRegisterPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDemoteRegisterToMemoryPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateReassociatePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateJumpThreadingPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateCFGSimplificationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBreakCriticalEdgesPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopSimplifyPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateTailCallEliminationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLowerSwitchPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLowerInvokePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBlockPlacementPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLCSSAPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateEarlyCSEPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGVNPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateMemCpyOptPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopDeletionPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateSimplifyLibCallsPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateCodeGenPreparePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateInstructionNamerPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateSinkingPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLowerAtomicPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateCorrelatedValuePropagationPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateInstructionSimplifierPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLowerExpectIntrinsicPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBBVectorizePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLoopVectorizePass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateGlobalsModRefPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateAliasAnalysisCounterPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateAAEvalPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateNoAAPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateBasicAliasAnalysisPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateScalarEvolutionAliasAnalysisPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateTypeBasedAliasAnalysisPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateProfileLoaderPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateProfileMetadataLoaderPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateNoProfileInfoPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateProfileEstimatorPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateProfileVerifierPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePathProfileLoaderPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateNoPathProfileInfoPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreatePathProfileVerifierPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLazyValueInfoPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateDependenceAnalysisPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateCostModelAnalysisPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateInstCountPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateRegionInfoPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateModuleDebugInfoPrinterPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateLintPass() -> PassRef; - #[fast_ffi] - pub fn LLVMCreateVerifierPass() -> PassRef; } } |
