applied patch to work with llvm 2.9 from llvm-py r105 ... 84.7KB version seen here: http://code.google.com/p/llvm-py/issues/detail?id=37

This commit is contained in:
AndrewBC 2011-06-05 21:21:18 -05:00
commit d5c2806b5d
6 changed files with 952 additions and 904 deletions

View file

@ -807,7 +807,7 @@ _wrap_pass( DomViewer )
_wrap_pass( EdgeProfiler ) _wrap_pass( EdgeProfiler )
_wrap_pass( FunctionAttrs ) _wrap_pass( FunctionAttrs )
_wrap_pass( FunctionInlining ) _wrap_pass( FunctionInlining )
_wrap_pass( GEPSplitter ) //_wrap_pass( GEPSplitter )
_wrap_pass( GlobalDCE ) _wrap_pass( GlobalDCE )
_wrap_pass( GlobalOptimizer ) _wrap_pass( GlobalOptimizer )
_wrap_pass( GlobalsModRef ) _wrap_pass( GlobalsModRef )
@ -822,11 +822,11 @@ _wrap_pass( JumpThreading )
_wrap_pass( LazyValueInfo ) _wrap_pass( LazyValueInfo )
_wrap_pass( LCSSA ) _wrap_pass( LCSSA )
_wrap_pass( LICM ) _wrap_pass( LICM )
_wrap_pass( LiveValues ) //_wrap_pass( LiveValues )
_wrap_pass( LoopDeletion ) _wrap_pass( LoopDeletion )
_wrap_pass( LoopDependenceAnalysis ) _wrap_pass( LoopDependenceAnalysis )
_wrap_pass( LoopExtractor ) _wrap_pass( LoopExtractor )
_wrap_pass( LoopIndexSplit ) //_wrap_pass( LoopIndexSplit )
_wrap_pass( LoopRotate ) _wrap_pass( LoopRotate )
_wrap_pass( LoopSimplify ) _wrap_pass( LoopSimplify )
_wrap_pass( LoopStrengthReduce ) _wrap_pass( LoopStrengthReduce )
@ -841,7 +841,7 @@ _wrap_pass( NoAA )
_wrap_pass( NoProfileInfo ) _wrap_pass( NoProfileInfo )
_wrap_pass( OptimalEdgeProfiler ) _wrap_pass( OptimalEdgeProfiler )
_wrap_pass( PartialInlining ) _wrap_pass( PartialInlining )
_wrap_pass( PartialSpecialization ) //_wrap_pass( PartialSpecialization )
_wrap_pass( PostDomOnlyPrinter ) _wrap_pass( PostDomOnlyPrinter )
_wrap_pass( PostDomOnlyViewer ) _wrap_pass( PostDomOnlyViewer )
_wrap_pass( PostDomPrinter ) _wrap_pass( PostDomPrinter )
@ -855,7 +855,7 @@ _wrap_pass( Reassociate )
_wrap_pass( ScalarEvolutionAliasAnalysis ) _wrap_pass( ScalarEvolutionAliasAnalysis )
_wrap_pass( ScalarReplAggregates ) _wrap_pass( ScalarReplAggregates )
_wrap_pass( SCCP ) _wrap_pass( SCCP )
_wrap_pass( SimplifyHalfPowrLibCalls ) //_wrap_pass( SimplifyHalfPowrLibCalls )
_wrap_pass( SimplifyLibCalls ) _wrap_pass( SimplifyLibCalls )
_wrap_pass( SingleLoopExtractor ) _wrap_pass( SingleLoopExtractor )
_wrap_pass( StripDeadPrototypes ) _wrap_pass( StripDeadPrototypes )
@ -1162,7 +1162,7 @@ _wLLVMLoadLibraryPermanently(PyObject *self, PyObject *args)
Py_RETURN_NONE; Py_RETURN_NONE;
} }
_wrap_obj2obj(LLVMInlineFunction, LLVMValueRef, int) //_wrap_obj2obj(LLVMInlineFunction, LLVMValueRef, int)
/* Expose the void* inside a PyCObject as a PyLong. This allows us to /* Expose the void* inside a PyCObject as a PyLong. This allows us to
* use it as a unique ID. */ * use it as a unique ID. */
@ -1569,7 +1569,7 @@ static PyMethodDef core_methods[] = {
_pass( EdgeProfiler ) _pass( EdgeProfiler )
_pass( FunctionAttrs ) _pass( FunctionAttrs )
_pass( FunctionInlining ) _pass( FunctionInlining )
_pass( GEPSplitter ) //_pass( GEPSplitter )
_pass( GlobalDCE ) _pass( GlobalDCE )
_pass( GlobalOptimizer ) _pass( GlobalOptimizer )
_pass( GlobalsModRef ) _pass( GlobalsModRef )
@ -1584,11 +1584,11 @@ static PyMethodDef core_methods[] = {
_pass( LazyValueInfo ) _pass( LazyValueInfo )
_pass( LCSSA ) _pass( LCSSA )
_pass( LICM ) _pass( LICM )
_pass( LiveValues ) //_pass( LiveValues )
_pass( LoopDeletion ) _pass( LoopDeletion )
_pass( LoopDependenceAnalysis ) _pass( LoopDependenceAnalysis )
_pass( LoopExtractor ) _pass( LoopExtractor )
_pass( LoopIndexSplit ) //_pass( LoopIndexSplit )
_pass( LoopRotate ) _pass( LoopRotate )
_pass( LoopSimplify ) _pass( LoopSimplify )
_pass( LoopStrengthReduce ) _pass( LoopStrengthReduce )
@ -1603,7 +1603,7 @@ static PyMethodDef core_methods[] = {
_pass( NoProfileInfo ) _pass( NoProfileInfo )
_pass( OptimalEdgeProfiler ) _pass( OptimalEdgeProfiler )
_pass( PartialInlining ) _pass( PartialInlining )
_pass( PartialSpecialization ) //_pass( PartialSpecialization )
_pass( PostDomOnlyPrinter ) _pass( PostDomOnlyPrinter )
_pass( PostDomOnlyViewer ) _pass( PostDomOnlyViewer )
_pass( PostDomPrinter ) _pass( PostDomPrinter )
@ -1617,7 +1617,7 @@ static PyMethodDef core_methods[] = {
_pass( ScalarEvolutionAliasAnalysis ) _pass( ScalarEvolutionAliasAnalysis )
_pass( ScalarReplAggregates ) _pass( ScalarReplAggregates )
_pass( SCCP ) _pass( SCCP )
_pass( SimplifyHalfPowrLibCalls ) //_pass( SimplifyHalfPowrLibCalls )
_pass( SimplifyLibCalls ) _pass( SimplifyLibCalls )
_pass( SingleLoopExtractor ) _pass( SingleLoopExtractor )
_pass( StripDeadPrototypes ) _pass( StripDeadPrototypes )
@ -1672,7 +1672,7 @@ static PyMethodDef core_methods[] = {
/* Misc */ /* Misc */
_method( LLVMGetIntrinsic ) _method( LLVMGetIntrinsic )
_method( LLVMLoadLibraryPermanently ) _method( LLVMLoadLibraryPermanently )
_method( LLVMInlineFunction ) //_method( LLVMInlineFunction )
_method( PyCObjectVoidPtrToPyLong ) _method( PyCObjectVoidPtrToPyLong )
{ NULL } { NULL }

File diff suppressed because it is too large Load diff

View file

@ -51,14 +51,16 @@ TYPE_X86_FP80 = 3
TYPE_FP128 = 4 TYPE_FP128 = 4
TYPE_PPC_FP128 = 5 TYPE_PPC_FP128 = 5
TYPE_LABEL = 6 TYPE_LABEL = 6
TYPE_INTEGER = 7 TYPE_METADATA = 7
TYPE_FUNCTION = 8 TYPE_X86_MMX = 8
TYPE_STRUCT = 9 TYPE_INTEGER = 9
TYPE_ARRAY = 10 TYPE_FUNCTION = 10
TYPE_POINTER = 11 TYPE_STRUCT = 11
TYPE_OPAQUE = 12 TYPE_ARRAY = 12
TYPE_VECTOR = 13 TYPE_POINTER = 13
TYPE_METADATA = 14 TYPE_OPAQUE = 14
TYPE_VECTOR = 15
# value IDs (llvm::Value::ValueTy enum) # value IDs (llvm::Value::ValueTy enum)
VALUE_ARGUMENT = 0 VALUE_ARGUMENT = 0
@ -140,11 +142,22 @@ OPCODE_EXTRACTVALUE = 53
OPCODE_INSERTVALUE = 54 OPCODE_INSERTVALUE = 54
# calling conventions # calling conventions
CC_C = 0 CC_C = 0
CC_FASTCALL = 8 CC_FASTCALL = 8
CC_COLDCALL = 9 CC_COLDCALL = 9
CC_X86_STDCALL = 64 CC_GHC = 10
CC_X86_FASTCALL = 65 CC_X86_STDCALL = 64
CC_X86_FASTCALL = 65
CC_ARM_APCS = 66
CC_ARM_AAPCS = 67
CC_ARM_AAPCS_VFP = 68
CC_MSP430_INTR = 69
CC_X86_THISCALL = 70
CC_PTX_KERNEL = 71
CC_PTX_DEVICE = 72
CC_MBLAZE_INTR = 73
CC_MBLAZE_SVOL = 74
# int predicates # int predicates
ICMP_EQ = 32 ICMP_EQ = 32
@ -248,11 +261,14 @@ ATTR_ALWAYS_INLINE = 1<<12
ATTR_OPTIMIZE_FOR_SIZE = 1<<13 ATTR_OPTIMIZE_FOR_SIZE = 1<<13
ATTR_STACK_PROTECT = 1<<14 ATTR_STACK_PROTECT = 1<<14
ATTR_STACK_PROTECT_REQ = 1<<15 ATTR_STACK_PROTECT_REQ = 1<<15
ATTR_ALIGNMENT = 1<<16
ATTR_NO_CAPTURE = 1<<21 ATTR_NO_CAPTURE = 1<<21
ATTR_NO_REDZONE = 1<<22 ATTR_NO_REDZONE = 1<<22
ATTR_NO_IMPLICIT_FLOAT = 1<<23 ATTR_NO_IMPLICIT_FLOAT = 1<<23
ATTR_NAKED = 1<<24 ATTR_NAKED = 1<<24
ATTR_INLINE_HINT = 1<<25 ATTR_INLINE_HINT = 1<<25
ATTR_STACK_ALIGNMENT = 7<<26
ATTR_HOTPATCH = 1<<29
# intrinsic IDs # intrinsic IDs
from llvm._intrinsic_ids import * from llvm._intrinsic_ids import *

View file

@ -54,7 +54,7 @@
#include "llvm/IntrinsicInst.h" #include "llvm/IntrinsicInst.h"
#include "llvm/Analysis/Verifier.h" #include "llvm/Analysis/Verifier.h"
#include "llvm/Assembly/Parser.h" #include "llvm/Assembly/Parser.h"
#include "llvm/System/DynamicLibrary.h" #include "llvm/Support/DynamicLibrary.h"
#include "llvm/PassManager.h" #include "llvm/PassManager.h"
#include "llvm/ExecutionEngine/ExecutionEngine.h" #include "llvm/ExecutionEngine/ExecutionEngine.h"
#include "llvm/Analysis/LoopPass.h" #include "llvm/Analysis/LoopPass.h"
@ -452,12 +452,19 @@ void *LLVMGetPointerToFunction(LLVMExecutionEngineRef ee, LLVMValueRef fn)
return eep->getPointerToFunction(fnp); return eep->getPointerToFunction(fnp);
} }
int LLVMInlineFunction(LLVMValueRef call) int LLVMInlineFunction(LLVMValueRef call)
{ {
llvm::Value *callp = llvm::unwrap(call); llvm::Value *callp = llvm::unwrap(call);
assert(callp); assert(callp);
llvm::CallSite cs = llvm::CallSite::get(callp); // llvm::CallSite cs = llvm::CallSite::get(callp);
llvm::CallSite cs;
llvm::Instruction *II = llvm::dyn_cast<llvm::Instruction>(callp);
if (II->getOpcode() == llvm::Instruction::Call)
cs = llvm::CallSite(static_cast<llvm::CallInst*>(II));
else if (II->getOpcode() == llvm::Instruction::Invoke)
cs = llvm::CallSite(static_cast<llvm::InvokeInst*>(II));
llvm::InlineFunctionInfo unused; llvm::InlineFunctionInfo unused;
return llvm::InlineFunction(cs, unused); return llvm::InlineFunction(cs, unused);
@ -501,13 +508,13 @@ define_pass( DomOnlyViewer )
define_pass( DomPrinter ) define_pass( DomPrinter )
define_pass( DomViewer ) define_pass( DomViewer )
define_pass( EdgeProfiler ) define_pass( EdgeProfiler )
define_pass( GEPSplitter ) //define_pass( GEPSplitter )
define_pass( GlobalsModRef ) define_pass( GlobalsModRef )
define_pass( InstCount ) define_pass( InstCount )
define_pass( InstructionNamer ) define_pass( InstructionNamer )
define_pass( LazyValueInfo ) define_pass( LazyValueInfo )
define_pass( LCSSA ) define_pass( LCSSA )
define_pass( LiveValues ) //define_pass( LiveValues )
define_pass( LoopDependenceAnalysis ) define_pass( LoopDependenceAnalysis )
define_pass( LoopExtractor ) define_pass( LoopExtractor )
define_pass( LoopSimplify ) define_pass( LoopSimplify )
@ -519,7 +526,7 @@ define_pass( NoAA )
define_pass( NoProfileInfo ) define_pass( NoProfileInfo )
define_pass( OptimalEdgeProfiler ) define_pass( OptimalEdgeProfiler )
define_pass( PartialInlining ) define_pass( PartialInlining )
define_pass( PartialSpecialization ) //define_pass( PartialSpecialization )
define_pass( PostDomOnlyPrinter ) define_pass( PostDomOnlyPrinter )
define_pass( PostDomOnlyViewer ) define_pass( PostDomOnlyViewer )
define_pass( PostDomPrinter ) define_pass( PostDomPrinter )
@ -528,7 +535,7 @@ define_pass( ProfileEstimator )
define_pass( ProfileLoader ) define_pass( ProfileLoader )
define_pass( ProfileVerifier ) define_pass( ProfileVerifier )
define_pass( ScalarEvolutionAliasAnalysis ) define_pass( ScalarEvolutionAliasAnalysis )
define_pass( SimplifyHalfPowrLibCalls ) //define_pass( SimplifyHalfPowrLibCalls )
define_pass( SingleLoopExtractor ) define_pass( SingleLoopExtractor )
define_pass( StripNonDebugSymbols ) define_pass( StripNonDebugSymbols )
define_pass( StructRetPromotion ) define_pass( StructRetPromotion )

View file

@ -181,7 +181,7 @@ void *LLVMGetPointerToFunction(LLVMExecutionEngineRef ee, LLVMValueRef fn);
/* Wraps llvm::InlineFunction(). Inlines a function. C is the call /* Wraps llvm::InlineFunction(). Inlines a function. C is the call
* instruction, created by LLVMBuildCall. Even if it fails, the Function * instruction, created by LLVMBuildCall. Even if it fails, the Function
* containing the call is still in a proper state (not changed). */ * containing the call is still in a proper state (not changed). */
int LLVMInlineFunction(LLVMValueRef call); //int LLVMInlineFunction(LLVMValueRef call);
/* Wraps llvm::getAlignmentFromAttrs from Attributes.h. Compliments the /* Wraps llvm::getAlignmentFromAttrs from Attributes.h. Compliments the
* already available LLVMSetParamAlignment(). */ * already available LLVMSetParamAlignment(). */
@ -209,13 +209,13 @@ declare_pass( DomOnlyViewer )
declare_pass( DomPrinter ) declare_pass( DomPrinter )
declare_pass( DomViewer ) declare_pass( DomViewer )
declare_pass( EdgeProfiler ) declare_pass( EdgeProfiler )
declare_pass( GEPSplitter ) //declare_pass( GEPSplitter )
declare_pass( GlobalsModRef ) declare_pass( GlobalsModRef )
declare_pass( InstCount ) declare_pass( InstCount )
declare_pass( InstructionNamer ) declare_pass( InstructionNamer )
declare_pass( LazyValueInfo ) declare_pass( LazyValueInfo )
declare_pass( LCSSA ) declare_pass( LCSSA )
declare_pass( LiveValues ) //declare_pass( LiveValues )
declare_pass( LoopDependenceAnalysis ) declare_pass( LoopDependenceAnalysis )
declare_pass( LoopExtractor ) declare_pass( LoopExtractor )
declare_pass( LoopSimplify ) declare_pass( LoopSimplify )
@ -227,7 +227,7 @@ declare_pass( NoAA )
declare_pass( NoProfileInfo ) declare_pass( NoProfileInfo )
declare_pass( OptimalEdgeProfiler ) declare_pass( OptimalEdgeProfiler )
declare_pass( PartialInlining ) declare_pass( PartialInlining )
declare_pass( PartialSpecialization ) //declare_pass( PartialSpecialization )
declare_pass( PostDomOnlyPrinter ) declare_pass( PostDomOnlyPrinter )
declare_pass( PostDomOnlyViewer ) declare_pass( PostDomOnlyViewer )
declare_pass( PostDomPrinter ) declare_pass( PostDomPrinter )

View file

@ -68,7 +68,7 @@ PASS_DOM_VIEWER = 24
PASS_EDGE_PROFILER = 25 PASS_EDGE_PROFILER = 25
PASS_FUNCTION_ATTRS = 26 PASS_FUNCTION_ATTRS = 26
PASS_FUNCTION_INLINING = 27 PASS_FUNCTION_INLINING = 27
PASS_GEP_SPLITTER = 28 #PASS_GEP_SPLITTER = 28
PASS_GLOBAL_DCE = 29 PASS_GLOBAL_DCE = 29
PASS_GLOBAL_OPTIMIZER = 30 PASS_GLOBAL_OPTIMIZER = 30
PASS_GLOBALS_MOD_REF = 31 PASS_GLOBALS_MOD_REF = 31
@ -83,11 +83,11 @@ PASS_JUMP_THREADING = 39
PASS_LAZY_VALUE_INFO = 40 PASS_LAZY_VALUE_INFO = 40
PASS_LCSSA = 41 PASS_LCSSA = 41
PASS_LICM = 42 PASS_LICM = 42
PASS_LIVE_VALUES = 43 #PASS_LIVE_VALUES = 43
PASS_LOOP_DELETION = 44 PASS_LOOP_DELETION = 44
PASS_LOOP_DEPENDENCE_ANALYSIS = 45 PASS_LOOP_DEPENDENCE_ANALYSIS = 45
PASS_LOOP_EXTRACTOR = 46 PASS_LOOP_EXTRACTOR = 46
PASS_LOOP_INDEX_SPLIT = 47 #PASS_LOOP_INDEX_SPLIT = 47
PASS_LOOP_ROTATE = 48 PASS_LOOP_ROTATE = 48
PASS_LOOP_SIMPLIFY = 49 PASS_LOOP_SIMPLIFY = 49
PASS_LOOP_STRENGTH_REDUCE = 50 PASS_LOOP_STRENGTH_REDUCE = 50
@ -102,11 +102,11 @@ PASS_NO_AA = 58
PASS_NO_PROFILE_INFO = 59 PASS_NO_PROFILE_INFO = 59
PASS_OPTIMAL_EDGE_PROFILER = 60 PASS_OPTIMAL_EDGE_PROFILER = 60
PASS_PARTIAL_INLINING = 61 PASS_PARTIAL_INLINING = 61
PASS_PARTIAL_SPECIALIZATION = 62 #PASS_PARTIAL_SPECIALIZATION = 62
PASS_POST_DOM_ONLY_PRINTER = 63 #PASS_POST_DOM_ONLY_PRINTER = 63
PASS_POST_DOM_ONLY_VIEWER = 64 #PASS_POST_DOM_ONLY_VIEWER = 64
PASS_POST_DOM_PRINTER = 65 #PASS_POST_DOM_PRINTER = 65
PASS_POST_DOM_VIEWER = 66 #PASS_POST_DOM_VIEWER = 66
PASS_PROFILE_ESTIMATOR = 67 PASS_PROFILE_ESTIMATOR = 67
PASS_PROFILE_LOADER = 68 PASS_PROFILE_LOADER = 68
PASS_PROFILE_VERIFIER = 69 PASS_PROFILE_VERIFIER = 69
@ -116,7 +116,7 @@ PASS_REASSOCIATE = 72
PASS_SCALAR_EVOLUTION_ALIAS_ANALYSIS = 73 PASS_SCALAR_EVOLUTION_ALIAS_ANALYSIS = 73
PASS_SCALAR_REPL_AGGREGATES = 74 PASS_SCALAR_REPL_AGGREGATES = 74
PASS_SCCP = 76 PASS_SCCP = 76
PASS_SIMPLIFY_HALF_POWR_LIB_CALLS = 77 #PASS_SIMPLIFY_HALF_POWR_LIB_CALLS = 77
PASS_SIMPLIFY_LIB_CALLS = 78 PASS_SIMPLIFY_LIB_CALLS = 78
PASS_SINGLE_LOOP_EXTRACTOR = 79 PASS_SINGLE_LOOP_EXTRACTOR = 79
PASS_STRIP_DEAD_PROTOTYPES = 82 PASS_STRIP_DEAD_PROTOTYPES = 82
@ -161,7 +161,7 @@ _pass_creator = {
PASS_EDGE_PROFILER : _core.LLVMAddEdgeProfilerPass, PASS_EDGE_PROFILER : _core.LLVMAddEdgeProfilerPass,
PASS_FUNCTION_ATTRS : _core.LLVMAddFunctionAttrsPass, PASS_FUNCTION_ATTRS : _core.LLVMAddFunctionAttrsPass,
PASS_FUNCTION_INLINING : _core.LLVMAddFunctionInliningPass, PASS_FUNCTION_INLINING : _core.LLVMAddFunctionInliningPass,
PASS_GEP_SPLITTER : _core.LLVMAddGEPSplitterPass, # PASS_GEP_SPLITTER : _core.LLVMAddGEPSplitterPass,
PASS_GLOBAL_DCE : _core.LLVMAddGlobalDCEPass, PASS_GLOBAL_DCE : _core.LLVMAddGlobalDCEPass,
PASS_GLOBAL_OPTIMIZER : _core.LLVMAddGlobalOptimizerPass, PASS_GLOBAL_OPTIMIZER : _core.LLVMAddGlobalOptimizerPass,
PASS_GLOBALS_MOD_REF : _core.LLVMAddGlobalsModRefPass, PASS_GLOBALS_MOD_REF : _core.LLVMAddGlobalsModRefPass,
@ -176,11 +176,11 @@ _pass_creator = {
PASS_LAZY_VALUE_INFO : _core.LLVMAddLazyValueInfoPass, PASS_LAZY_VALUE_INFO : _core.LLVMAddLazyValueInfoPass,
PASS_LCSSA : _core.LLVMAddLCSSAPass, PASS_LCSSA : _core.LLVMAddLCSSAPass,
PASS_LICM : _core.LLVMAddLICMPass, PASS_LICM : _core.LLVMAddLICMPass,
PASS_LIVE_VALUES : _core.LLVMAddLiveValuesPass, # PASS_LIVE_VALUES : _core.LLVMAddLiveValuesPass,
PASS_LOOP_DELETION : _core.LLVMAddLoopDeletionPass, PASS_LOOP_DELETION : _core.LLVMAddLoopDeletionPass,
PASS_LOOP_DEPENDENCE_ANALYSIS : _core.LLVMAddLoopDependenceAnalysisPass, PASS_LOOP_DEPENDENCE_ANALYSIS : _core.LLVMAddLoopDependenceAnalysisPass,
PASS_LOOP_EXTRACTOR : _core.LLVMAddLoopExtractorPass, PASS_LOOP_EXTRACTOR : _core.LLVMAddLoopExtractorPass,
PASS_LOOP_INDEX_SPLIT : _core.LLVMAddLoopIndexSplitPass, # PASS_LOOP_INDEX_SPLIT : _core.LLVMAddLoopIndexSplitPass,
PASS_LOOP_ROTATE : _core.LLVMAddLoopRotatePass, PASS_LOOP_ROTATE : _core.LLVMAddLoopRotatePass,
PASS_LOOP_SIMPLIFY : _core.LLVMAddLoopSimplifyPass, PASS_LOOP_SIMPLIFY : _core.LLVMAddLoopSimplifyPass,
PASS_LOOP_STRENGTH_REDUCE : _core.LLVMAddLoopStrengthReducePass, PASS_LOOP_STRENGTH_REDUCE : _core.LLVMAddLoopStrengthReducePass,
@ -195,11 +195,11 @@ _pass_creator = {
PASS_NO_PROFILE_INFO : _core.LLVMAddNoProfileInfoPass, PASS_NO_PROFILE_INFO : _core.LLVMAddNoProfileInfoPass,
PASS_OPTIMAL_EDGE_PROFILER : _core.LLVMAddOptimalEdgeProfilerPass, PASS_OPTIMAL_EDGE_PROFILER : _core.LLVMAddOptimalEdgeProfilerPass,
PASS_PARTIAL_INLINING : _core.LLVMAddPartialInliningPass, PASS_PARTIAL_INLINING : _core.LLVMAddPartialInliningPass,
PASS_PARTIAL_SPECIALIZATION : _core.LLVMAddPartialSpecializationPass, # PASS_PARTIAL_SPECIALIZATION : _core.LLVMAddPartialSpecializationPass,
PASS_POST_DOM_ONLY_PRINTER : _core.LLVMAddPostDomOnlyPrinterPass, # PASS_POST_DOM_ONLY_PRINTER : _core.LLVMAddPostDomOnlyPrinterPass,
PASS_POST_DOM_ONLY_VIEWER : _core.LLVMAddPostDomOnlyViewerPass, # PASS_POST_DOM_ONLY_VIEWER : _core.LLVMAddPostDomOnlyViewerPass,
PASS_POST_DOM_PRINTER : _core.LLVMAddPostDomPrinterPass, # PASS_POST_DOM_PRINTER : _core.LLVMAddPostDomPrinterPass,
PASS_POST_DOM_VIEWER : _core.LLVMAddPostDomViewerPass, # PASS_POST_DOM_VIEWER : _core.LLVMAddPostDomViewerPass,
PASS_PROFILE_ESTIMATOR : _core.LLVMAddProfileEstimatorPass, PASS_PROFILE_ESTIMATOR : _core.LLVMAddProfileEstimatorPass,
PASS_PROFILE_LOADER : _core.LLVMAddProfileLoaderPass, PASS_PROFILE_LOADER : _core.LLVMAddProfileLoaderPass,
PASS_PROFILE_VERIFIER : _core.LLVMAddProfileVerifierPass, PASS_PROFILE_VERIFIER : _core.LLVMAddProfileVerifierPass,
@ -209,7 +209,7 @@ _pass_creator = {
PASS_SCALAR_EVOLUTION_ALIAS_ANALYSIS : _core.LLVMAddScalarEvolutionAliasAnalysisPass, PASS_SCALAR_EVOLUTION_ALIAS_ANALYSIS : _core.LLVMAddScalarEvolutionAliasAnalysisPass,
PASS_SCALAR_REPL_AGGREGATES : _core.LLVMAddScalarReplAggregatesPass, PASS_SCALAR_REPL_AGGREGATES : _core.LLVMAddScalarReplAggregatesPass,
PASS_SCCP : _core.LLVMAddSCCPPass, PASS_SCCP : _core.LLVMAddSCCPPass,
PASS_SIMPLIFY_HALF_POWR_LIB_CALLS : _core.LLVMAddSimplifyHalfPowrLibCallsPass, # PASS_SIMPLIFY_HALF_POWR_LIB_CALLS : _core.LLVMAddSimplifyHalfPowrLibCallsPass,
PASS_SIMPLIFY_LIB_CALLS : _core.LLVMAddSimplifyLibCallsPass, PASS_SIMPLIFY_LIB_CALLS : _core.LLVMAddSimplifyLibCallsPass,
PASS_SINGLE_LOOP_EXTRACTOR : _core.LLVMAddSingleLoopExtractorPass, PASS_SINGLE_LOOP_EXTRACTOR : _core.LLVMAddSingleLoopExtractorPass,
PASS_STRIP_DEAD_PROTOTYPES : _core.LLVMAddStripDeadPrototypesPass, PASS_STRIP_DEAD_PROTOTYPES : _core.LLVMAddStripDeadPrototypesPass,