summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2010-10-06 20:07:03 +0000
committerOwen Anderson <resistor@mac.com>2010-10-06 20:07:03 +0000
commitb93cf04d9afd74d6c02264df129e494f88a9e55a (patch)
tree68700b5322cd9e72310f77e5c331d16070fe0657 /llvm/include
parent1a5d93d589a5fa4713397d54d1bb027bfb355bf9 (diff)
downloadbcm5719-llvm-b93cf04d9afd74d6c02264df129e494f88a9e55a.tar.gz
bcm5719-llvm-b93cf04d9afd74d6c02264df129e494f88a9e55a.zip
Pass initialization functions should take a PassRegistry as a parameter
rather than being fixed to the global registry. llvm-svn: 115824
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/PassSupport.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/llvm/include/llvm/PassSupport.h b/llvm/include/llvm/PassSupport.h
index 933a1455a52..ac61eb6a073 100644
--- a/llvm/include/llvm/PassSupport.h
+++ b/llvm/include/llvm/PassSupport.h
@@ -128,10 +128,10 @@ private:
};
#define INITIALIZE_PASS(passName, arg, name, cfg, analysis) \
- void initialize##passName##Pass() { \
+ void initialize##passName##Pass(PassRegistry &Registry) { \
PassInfo *PI = new PassInfo(name, arg, & passName ::ID, \
PassInfo::NormalCtor_t(callDefaultCtor< passName >), cfg, analysis); \
- PassRegistry::getPassRegistry()->registerPass(*PI); \
+ Registry.registerPass(*PI); \
} \
static RegisterPass<passName> passName ## _info(arg, name, cfg, analysis)
@@ -211,14 +211,13 @@ struct RegisterAnalysisGroup : public RegisterAGBase {
};
#define INITIALIZE_AG_PASS(passName, agName, arg, name, cfg, analysis, def) \
- void initialize##passName##Pass() { \
+ void initialize##passName##Pass(PassRegistry &Registry) { \
PassInfo *PI = new PassInfo(name, arg, & passName ::ID, \
PassInfo::NormalCtor_t(callDefaultCtor< passName >), cfg, analysis); \
- PassRegistry::getPassRegistry()->registerPass(*PI); \
+ Registry.registerPass(*PI); \
\
PassInfo *AI = new PassInfo(name, & agName :: ID); \
- PassRegistry::getPassRegistry()->registerAnalysisGroup( \
- & agName ::ID, & passName ::ID, *AI, def); \
+ Registry.registerAnalysisGroup(& agName ::ID, & passName ::ID, *AI, def); \
} \
static RegisterPass<passName> passName ## _info(arg, name, cfg, analysis); \
static RegisterAnalysisGroup<agName, def> passName ## _ag(passName ## _info)
OpenPOWER on IntegriCloud