aboutsummaryrefslogtreecommitdiffstats
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)
downloadexternal_llvm-3e15bf33e024b9df9e89351a165acfdb1dde51ed.zip
external_llvm-3e15bf33e024b9df9e89351a165acfdb1dde51ed.tar.gz
external_llvm-3e15bf33e024b9df9e89351a165acfdb1dde51ed.tar.bz2
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 ab29e4e..32d2bb6 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 ee1980f..313f4c3 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 f2631cb..34d984d 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 a4df97a..14526a2 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 90c90fe..79d2198 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 b1369a2..1b72818 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 6154460..13ed16b 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 cd90a6f..3e5be67 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 ad6c898..4309555 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 2c5aeaa..b75eae8 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 d35f7be..d52617d 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 ea8b1d8..b704931 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 23c891b..87fcd8f 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 b380a51..dab60d6 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 fdb5545..6f4dbbb 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 fd66d29..f936706 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 eeb27ac..de0f21c 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 a328a89..a818e6a 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 2a6a6a5..f487a05 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 9697de8..ca6f4e4 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 2c591fc..cef1dc2 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 2ecbce5..b91286b 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)");