comparison include/llvm/PassSupport.h @ 83:60c9769439b8 LLVM3.7

LLVM 3.7
author Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp>
date Wed, 18 Feb 2015 14:55:36 +0900
parents 54457678186b
children afa8332a0e37
comparison
equal deleted inserted replaced
78:af83660cff7b 83:60c9769439b8
80 } \ 80 } \
81 void llvm::initialize##passName##Pass(PassRegistry &Registry) { \ 81 void llvm::initialize##passName##Pass(PassRegistry &Registry) { \
82 CALL_ONCE_INITIALIZATION(initialize##passName##PassOnce) \ 82 CALL_ONCE_INITIALIZATION(initialize##passName##PassOnce) \
83 } 83 }
84 84
85 #define INITIALIZE_PASS_WITH_OPTIONS(PassName, Arg, Name, Cfg, Analysis) \
86 INITIALIZE_PASS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \
87 PassName::registerOptions(); \
88 INITIALIZE_PASS_END(PassName, Arg, Name, Cfg, Analysis)
89
90 #define INITIALIZE_PASS_WITH_OPTIONS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \
91 INITIALIZE_PASS_BEGIN(PassName, Arg, Name, Cfg, Analysis) \
92 PassName::registerOptions(); \
93
85 template<typename PassName> 94 template<typename PassName>
86 Pass *callDefaultCtor() { return new PassName(); } 95 Pass *callDefaultCtor() { return new PassName(); }
87 96
88 template <typename PassName> Pass *callTargetMachineCtor(TargetMachine *TM) { 97 template <typename PassName> Pass *callTargetMachineCtor(TargetMachine *TM) {
89 return new PassName(TM); 98 return new PassName(TM);