aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2007-05-02 21:39:20 +0000
committerDevang Patel <dpatel@apple.com>2007-05-02 21:39:20 +0000
commit3e15bf33e024b9df9e89351a165acfdb1dde51ed (patch)
tree2a1b470e139345efc714c51846d285e5a52a9f12 /lib/Analysis
parent749a89bd53422c2aba0d78dc6e72a6d498b453e1 (diff)
Use 'static const char' instead of 'static const int'.
Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36652 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis')
-rw-r--r--lib/Analysis/AliasAnalysis.cpp2
-rw-r--r--lib/Analysis/AliasAnalysisCounter.cpp4
-rw-r--r--lib/Analysis/AliasAnalysisEvaluator.cpp4
-rw-r--r--lib/Analysis/AliasDebugger.cpp4
-rw-r--r--lib/Analysis/AliasSetTracker.cpp4
-rw-r--r--lib/Analysis/BasicAliasAnalysis.cpp8
-rw-r--r--lib/Analysis/CFGPrinter.cpp8
-rw-r--r--lib/Analysis/IPA/Andersens.cpp4
-rw-r--r--lib/Analysis/IPA/CallGraph.cpp7
-rw-r--r--lib/Analysis/IPA/CallGraphSCCPass.cpp4
-rw-r--r--lib/Analysis/IPA/FindUsedTypes.cpp2
-rw-r--r--lib/Analysis/IPA/GlobalsModRef.cpp4
-rw-r--r--lib/Analysis/InstCount.cpp4
-rw-r--r--lib/Analysis/IntervalPartition.cpp2
-rw-r--r--lib/Analysis/LoadValueNumbering.cpp4
-rw-r--r--lib/Analysis/LoopInfo.cpp2
-rw-r--r--lib/Analysis/LoopPass.cpp2
-rw-r--r--lib/Analysis/PostDominators.cpp6
-rw-r--r--lib/Analysis/ProfileInfo.cpp6
-rw-r--r--lib/Analysis/ProfileInfoLoaderPass.cpp4
-rw-r--r--lib/Analysis/ScalarEvolution.cpp2
-rw-r--r--lib/Analysis/ValueNumbering.cpp6
22 files changed, 46 insertions, 47 deletions
diff --git a/lib/Analysis/AliasAnalysis.cpp b/lib/Analysis/AliasAnalysis.cpp
index ab29e4ebb4..32d2bb6b36 100644
--- a/lib/Analysis/AliasAnalysis.cpp
+++ b/lib/Analysis/AliasAnalysis.cpp
@@ -36,7 +36,7 @@ using namespace llvm;
namespace {
RegisterAnalysisGroup<AliasAnalysis> Z("Alias Analysis");
}
-const int AliasAnalysis::ID = 0;
+const char AliasAnalysis::ID = 0;
//===----------------------------------------------------------------------===//
// Default chaining methods
diff --git a/lib/Analysis/AliasAnalysisCounter.cpp b/lib/Analysis/AliasAnalysisCounter.cpp
index ee1980fc4c..313f4c3c5b 100644
--- a/lib/Analysis/AliasAnalysisCounter.cpp
+++ b/lib/Analysis/AliasAnalysisCounter.cpp
@@ -34,7 +34,7 @@ namespace {
const char *Name;
Module *M;
public:
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
AliasAnalysisCounter() : ModulePass((intptr_t) &ID) {
No = May = Must = 0;
NoMR = JustRef = JustMod = MR = 0;
@@ -108,7 +108,7 @@ namespace {
}
};
- const int AliasAnalysisCounter::ID = 0;
+ const char AliasAnalysisCounter::ID = 0;
RegisterPass<AliasAnalysisCounter>
X("count-aa", "Count Alias Analysis Query Responses");
RegisterAnalysisGroup<AliasAnalysis> Y(X);
diff --git a/lib/Analysis/AliasAnalysisEvaluator.cpp b/lib/Analysis/AliasAnalysisEvaluator.cpp
index f2631cb8ba..34d984d7ae 100644
--- a/lib/Analysis/AliasAnalysisEvaluator.cpp
+++ b/lib/Analysis/AliasAnalysisEvaluator.cpp
@@ -50,7 +50,7 @@ namespace {
unsigned NoModRef, Mod, Ref, ModRef;
public:
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
AAEval() : FunctionPass((intptr_t)&ID) {}
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
@@ -73,7 +73,7 @@ namespace {
bool doFinalization(Module &M);
};
- const int AAEval::ID = 0;
+ const char AAEval::ID = 0;
RegisterPass<AAEval>
X("aa-eval", "Exhaustive Alias Analysis Precision Evaluator");
}
diff --git a/lib/Analysis/AliasDebugger.cpp b/lib/Analysis/AliasDebugger.cpp
index a4df97a196..14526a279d 100644
--- a/lib/Analysis/AliasDebugger.cpp
+++ b/lib/Analysis/AliasDebugger.cpp
@@ -40,7 +40,7 @@ namespace {
std::set<const Value*> Vals;
public:
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
AliasDebugger() : ModulePass((intptr_t)&ID) {}
bool runOnModule(Module &M) {
@@ -122,7 +122,7 @@ namespace {
};
- const int AliasDebugger::ID = 0;
+ const char AliasDebugger::ID = 0;
RegisterPass<AliasDebugger> X("debug-aa", "AA use debugger");
RegisterAnalysisGroup<AliasAnalysis> Y(X);
}
diff --git a/lib/Analysis/AliasSetTracker.cpp b/lib/Analysis/AliasSetTracker.cpp
index 90c90fe58f..79d21985da 100644
--- a/lib/Analysis/AliasSetTracker.cpp
+++ b/lib/Analysis/AliasSetTracker.cpp
@@ -555,7 +555,7 @@ namespace {
class VISIBILITY_HIDDEN AliasSetPrinter : public FunctionPass {
AliasSetTracker *Tracker;
public:
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
AliasSetPrinter() : FunctionPass((intptr_t)&ID) {}
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
@@ -573,6 +573,6 @@ namespace {
return false;
}
};
- const int AliasSetPrinter::ID = 0;
+ const char AliasSetPrinter::ID = 0;
RegisterPass<AliasSetPrinter> X("print-alias-sets", "Alias Set Printer");
}
diff --git a/lib/Analysis/BasicAliasAnalysis.cpp b/lib/Analysis/BasicAliasAnalysis.cpp
index b1369a2920..1b728186ff 100644
--- a/lib/Analysis/BasicAliasAnalysis.cpp
+++ b/lib/Analysis/BasicAliasAnalysis.cpp
@@ -36,7 +36,7 @@ namespace {
/// such it doesn't follow many of the rules that other alias analyses must.
///
struct VISIBILITY_HIDDEN NoAA : public ImmutablePass, public AliasAnalysis {
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
NoAA() : ImmutablePass((intptr_t)&ID) {}
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
@@ -77,7 +77,7 @@ namespace {
};
// Register this pass...
- const int NoAA::ID = 0;
+ const char NoAA::ID = 0;
RegisterPass<NoAA>
U("no-aa", "No Alias Analysis (always returns 'may' alias)");
@@ -92,7 +92,7 @@ namespace {
/// Because it doesn't chain to a previous alias analysis (like -no-aa), it
/// derives from the NoAA class.
struct VISIBILITY_HIDDEN BasicAliasAnalysis : public NoAA {
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
AliasResult alias(const Value *V1, unsigned V1Size,
const Value *V2, unsigned V2Size);
@@ -124,7 +124,7 @@ namespace {
};
// Register this pass...
- const int BasicAliasAnalysis::ID = 0;
+ const char BasicAliasAnalysis::ID = 0;
RegisterPass<BasicAliasAnalysis>
X("basicaa", "Basic Alias Analysis (default AA impl)");
diff --git a/lib/Analysis/CFGPrinter.cpp b/lib/Analysis/CFGPrinter.cpp
index 6154460375..13ed16b09a 100644
--- a/lib/Analysis/CFGPrinter.cpp
+++ b/lib/Analysis/CFGPrinter.cpp
@@ -91,7 +91,7 @@ struct DOTGraphTraits<const Function*> : public DefaultDOTGraphTraits {
namespace {
struct VISIBILITY_HIDDEN CFGPrinter : public FunctionPass {
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
CFGPrinter() : FunctionPass((intptr_t)&ID) {}
virtual bool runOnFunction(Function &F) {
@@ -114,12 +114,12 @@ namespace {
}
};
- const int CFGPrinter::ID = 0;
+ const char CFGPrinter::ID = 0;
RegisterPass<CFGPrinter> P1("print-cfg",
"Print CFG of function to 'dot' file");
struct VISIBILITY_HIDDEN CFGOnlyPrinter : public CFGPrinter {
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
virtual bool runOnFunction(Function &F) {
bool OldCFGOnly = CFGOnly;
CFGOnly = true;
@@ -134,7 +134,7 @@ namespace {
}
};
- const int CFGOnlyPrinter::ID = 0;
+ const char CFGOnlyPrinter::ID = 0;
RegisterPass<CFGOnlyPrinter>
P2("print-cfg-only",
"Print CFG of function to 'dot' file (with no function bodies)");
diff --git a/lib/Analysis/IPA/Andersens.cpp b/lib/Analysis/IPA/Andersens.cpp
index cd90a6f22b..3e5be678ed 100644
--- a/lib/Analysis/IPA/Andersens.cpp
+++ b/lib/Analysis/IPA/Andersens.cpp
@@ -76,7 +76,7 @@ namespace {
class VISIBILITY_HIDDEN Andersens : public ModulePass, public AliasAnalysis,
private InstVisitor<Andersens> {
public:
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
Andersens() : ModulePass((intptr_t)&ID) {}
private:
/// Node class - This class is used to represent a memory object in the
@@ -339,7 +339,7 @@ namespace {
void visitInstruction(Instruction &I);
};
- const int Andersens::ID = 0;
+ const char Andersens::ID = 0;
RegisterPass<Andersens> X("anders-aa",
"Andersen's Interprocedural Alias Analysis");
RegisterAnalysisGroup<AliasAnalysis> Y(X);
diff --git a/lib/Analysis/IPA/CallGraph.cpp b/lib/Analysis/IPA/CallGraph.cpp
index ad6c898540..4309555bf1 100644
--- a/lib/Analysis/IPA/CallGraph.cpp
+++ b/lib/Analysis/IPA/CallGraph.cpp
@@ -51,7 +51,7 @@ class VISIBILITY_HIDDEN BasicCallGraph : public CallGraph, public ModulePass {
CallGraphNode *CallsExternalNode;
public:
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
BasicCallGraph() : ModulePass((intptr_t)&ID), Root(0),
ExternalCallingNode(0), CallsExternalNode(0) {}
@@ -190,15 +190,14 @@ private:
}
};
-
RegisterAnalysisGroup<CallGraph> X("Call Graph");
RegisterPass<BasicCallGraph> Y("basiccg", "Basic CallGraph Construction");
RegisterAnalysisGroup<CallGraph, true> Z(Y);
} //End anonymous namespace
-const int CallGraph::ID = 0;
-const int BasicCallGraph::ID = 0;
+const char CallGraph::ID = 0;
+const char BasicCallGraph::ID = 0;
void CallGraph::initialize(Module &M) {
Mod = &M;
diff --git a/lib/Analysis/IPA/CallGraphSCCPass.cpp b/lib/Analysis/IPA/CallGraphSCCPass.cpp
index 2c5aeaa4c2..b75eae8a5c 100644
--- a/lib/Analysis/IPA/CallGraphSCCPass.cpp
+++ b/lib/Analysis/IPA/CallGraphSCCPass.cpp
@@ -30,7 +30,7 @@ using namespace llvm;
class CGPassManager : public ModulePass, public PMDataManager {
public:
- static const int ID;
+ static const char ID;
CGPassManager(int Depth)
: ModulePass((intptr_t)&ID), PMDataManager(Depth) { }
@@ -73,7 +73,7 @@ public:
}
};
-const int CGPassManager::ID = 0;
+const char CGPassManager::ID = 0;
/// run - Execute all of the passes scheduled for execution. Keep track of
/// whether any of the passes modifies the module, and if so, return true.
bool CGPassManager::runOnModule(Module &M) {
diff --git a/lib/Analysis/IPA/FindUsedTypes.cpp b/lib/Analysis/IPA/FindUsedTypes.cpp
index d35f7beed1..d52617da08 100644
--- a/lib/Analysis/IPA/FindUsedTypes.cpp
+++ b/lib/Analysis/IPA/FindUsedTypes.cpp
@@ -21,7 +21,7 @@
#include "llvm/Support/InstIterator.h"
using namespace llvm;
-const int FindUsedTypes::ID = 0;
+const char FindUsedTypes::ID = 0;
static RegisterPass<FindUsedTypes>
X("printusedtypes", "Find Used Types");
diff --git a/lib/Analysis/IPA/GlobalsModRef.cpp b/lib/Analysis/IPA/GlobalsModRef.cpp
index ea8b1d8487..b704931afe 100644
--- a/lib/Analysis/IPA/GlobalsModRef.cpp
+++ b/lib/Analysis/IPA/GlobalsModRef.cpp
@@ -83,7 +83,7 @@ namespace {
std::map<Function*, FunctionRecord> FunctionInfo;
public:
- static const int ID;
+ static const char ID;
GlobalsModRef() : ModulePass((intptr_t)&ID) {}
bool runOnModule(Module &M) {
@@ -146,7 +146,7 @@ namespace {
bool AnalyzeIndirectGlobalMemory(GlobalValue *GV);
};
- const int GlobalsModRef::ID = 0;
+ const char GlobalsModRef::ID = 0;
RegisterPass<GlobalsModRef> X("globalsmodref-aa",
"Simple mod/ref analysis for globals");
RegisterAnalysisGroup<AliasAnalysis> Y(X);
diff --git a/lib/Analysis/InstCount.cpp b/lib/Analysis/InstCount.cpp
index 23c891b5ed..87fcd8ff4e 100644
--- a/lib/Analysis/InstCount.cpp
+++ b/lib/Analysis/InstCount.cpp
@@ -51,7 +51,7 @@ namespace {
abort();
}
public:
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
InstCount() : FunctionPass((intptr_t)&ID) {}
virtual bool runOnFunction(Function &F);
@@ -63,7 +63,7 @@ namespace {
};
- const int InstCount::ID = 0;
+ const char InstCount::ID = 0;
RegisterPass<InstCount> X("instcount",
"Counts the various types of Instructions");
}
diff --git a/lib/Analysis/IntervalPartition.cpp b/lib/Analysis/IntervalPartition.cpp
index b380a5190d..dab60d6c48 100644
--- a/lib/Analysis/IntervalPartition.cpp
+++ b/lib/Analysis/IntervalPartition.cpp
@@ -15,7 +15,7 @@
#include "llvm/Analysis/IntervalIterator.h"
using namespace llvm;
-const int IntervalPartition::ID = 0;
+const char IntervalPartition::ID = 0;
static RegisterPass<IntervalPartition>
X("intervals", "Interval Partition Construction", true);
diff --git a/lib/Analysis/LoadValueNumbering.cpp b/lib/Analysis/LoadValueNumbering.cpp
index fdb5545c2b..6f4dbbbf56 100644
--- a/lib/Analysis/LoadValueNumbering.cpp
+++ b/lib/Analysis/LoadValueNumbering.cpp
@@ -40,7 +40,7 @@ using namespace llvm;
namespace {
// FIXME: This should not be a FunctionPass.
struct VISIBILITY_HIDDEN LoadVN : public FunctionPass, public ValueNumbering {
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
LoadVN() : FunctionPass((intptr_t)&ID) {}
/// Pass Implementation stuff. This doesn't do any analysis.
@@ -83,7 +83,7 @@ namespace {
std::vector<Value*> &RetVals) const;
};
- const int LoadVN::ID = 0;
+ const char LoadVN::ID = 0;
// Register this pass...
RegisterPass<LoadVN> X("load-vn", "Load Value Numbering");
diff --git a/lib/Analysis/LoopInfo.cpp b/lib/Analysis/LoopInfo.cpp
index fd66d29584..f936706255 100644
--- a/lib/Analysis/LoopInfo.cpp
+++ b/lib/Analysis/LoopInfo.cpp
@@ -27,7 +27,7 @@
#include <ostream>
using namespace llvm;
-const int LoopInfo::ID = 0;
+const char LoopInfo::ID = 0;
static RegisterPass<LoopInfo>
X("loops", "Natural Loop Construction", true);
diff --git a/lib/Analysis/LoopPass.cpp b/lib/Analysis/LoopPass.cpp
index eeb27ac1b3..de0f21ca20 100644
--- a/lib/Analysis/LoopPass.cpp
+++ b/lib/Analysis/LoopPass.cpp
@@ -21,7 +21,7 @@ using namespace llvm;
// LPPassManager
//
-const int LPPassManager::ID = 0;
+const char LPPassManager::ID = 0;
/// LPPassManager manages FPPassManagers and CalLGraphSCCPasses.
LPPassManager::LPPassManager(int Depth)
diff --git a/lib/Analysis/PostDominators.cpp b/lib/Analysis/PostDominators.cpp
index a328a89414..a818e6a03c 100644
--- a/lib/Analysis/PostDominators.cpp
+++ b/lib/Analysis/PostDominators.cpp
@@ -22,9 +22,9 @@ using namespace llvm;
// PostDominatorTree Implementation
//===----------------------------------------------------------------------===//
-const int PostDominatorTree::ID = 0;
-const int PostDominanceFrontier::ID = 0;
-const int PostETForest::ID = 0;
+const char PostDominatorTree::ID = 0;
+const char PostDominanceFrontier::ID = 0;
+const char PostETForest::ID = 0;
static RegisterPass<PostDominatorTree>
F("postdomtree", "Post-Dominator Tree Construction", true);
diff --git a/lib/Analysis/ProfileInfo.cpp b/lib/Analysis/ProfileInfo.cpp
index 2a6a6a50bd..f487a058d2 100644
--- a/lib/Analysis/ProfileInfo.cpp
+++ b/lib/Analysis/ProfileInfo.cpp
@@ -24,7 +24,7 @@ using namespace llvm;
namespace {
RegisterAnalysisGroup<ProfileInfo> Z("Profile Information");
}
-const int ProfileInfo::ID = 0;
+const char ProfileInfo::ID = 0;
ProfileInfo::~ProfileInfo() {}
@@ -86,11 +86,11 @@ unsigned ProfileInfo::getExecutionCount(BasicBlock *BB) const {
namespace {
struct VISIBILITY_HIDDEN NoProfileInfo
: public ImmutablePass, public ProfileInfo {
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
NoProfileInfo() : ImmutablePass((intptr_t)&ID) {}
};
- const int NoProfileInfo::ID = 0;
+ const char NoProfileInfo::ID = 0;
// Register this pass...
RegisterPass<NoProfileInfo>
X("no-profile", "No Profile Information");
diff --git a/lib/Analysis/ProfileInfoLoaderPass.cpp b/lib/Analysis/ProfileInfoLoaderPass.cpp
index 9697de8cdd..ca6f4e44a5 100644
--- a/lib/Analysis/ProfileInfoLoaderPass.cpp
+++ b/lib/Analysis/ProfileInfoLoaderPass.cpp
@@ -32,7 +32,7 @@ namespace {
class VISIBILITY_HIDDEN LoaderPass : public ModulePass, public ProfileInfo {
std::string Filename;
public:
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
LoaderPass(const std::string &filename = "")
: ModulePass((intptr_t)&ID), Filename(filename) {
if (filename.empty()) Filename = ProfileInfoFilename;
@@ -50,7 +50,7 @@ namespace {
virtual bool runOnModule(Module &M);
};
- const int LoaderPass::ID = 0;
+ const char LoaderPass::ID = 0;
RegisterPass<LoaderPass>
X("profile-loader", "Load profile information from llvmprof.out");
diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp
index 2c591fc0d5..cef1dc255f 100644
--- a/lib/Analysis/ScalarEvolution.cpp
+++ b/lib/Analysis/ScalarEvolution.cpp
@@ -105,7 +105,7 @@ namespace {
RegisterPass<ScalarEvolution>
R("scalar-evolution", "Scalar Evolution Analysis");
}
-const int ScalarEvolution::ID = 0;
+const char ScalarEvolution::ID = 0;
//===----------------------------------------------------------------------===//
// SCEV class definitions
diff --git a/lib/Analysis/ValueNumbering.cpp b/lib/Analysis/ValueNumbering.cpp
index 2ecbce55c2..b91286bc7a 100644
--- a/lib/Analysis/ValueNumbering.cpp
+++ b/lib/Analysis/ValueNumbering.cpp
@@ -22,7 +22,7 @@
#include "llvm/Support/Compiler.h"
using namespace llvm;
-const int ValueNumbering::ID = 0;
+const char ValueNumbering::ID = 0;
// Register the ValueNumbering interface, providing a nice name to refer to.
static RegisterAnalysisGroup<ValueNumbering> X("Value Numbering");
@@ -52,7 +52,7 @@ namespace {
///
struct VISIBILITY_HIDDEN BasicVN
: public ImmutablePass, public ValueNumbering {
- static const int ID; // Class identification, replacement for typeinfo
+ static const char ID; // Class identification, replacement for typeinfo
BasicVN() : ImmutablePass((intptr_t)&ID) {}
/// getEqualNumberNodes - Return nodes with the same value number as the
@@ -65,7 +65,7 @@ namespace {
std::vector<Value*> &RetVals) const;
};
- const int BasicVN::ID = 0;
+ const char BasicVN::ID = 0;
// Register this pass...
RegisterPass<BasicVN>
X("basicvn", "Basic Value Numbering (default GVN impl)");