[llvm-commits] CVS: llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp EdgeProfiling.cpp RSProfiling.cpp RSProfiling.h
Devang Patel
dpatel at apple.com
Wed May 2 14:41:27 PDT 2007
Changes in directory llvm/lib/Transforms/Instrumentation:
BlockProfiling.cpp updated: 1.23 -> 1.24
EdgeProfiling.cpp updated: 1.13 -> 1.14
RSProfiling.cpp updated: 1.25 -> 1.26
RSProfiling.h updated: 1.5 -> 1.6
---
Log message:
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.
---
Diffs of the changes: (+12 -12)
BlockProfiling.cpp | 8 ++++----
EdgeProfiling.cpp | 4 ++--
RSProfiling.cpp | 10 +++++-----
RSProfiling.h | 2 +-
4 files changed, 12 insertions(+), 12 deletions(-)
Index: llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp
diff -u llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp:1.23 llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp:1.24
--- llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp:1.23 Tue May 1 16:15:47 2007
+++ llvm/lib/Transforms/Instrumentation/BlockProfiling.cpp Wed May 2 16:39:19 2007
@@ -33,11 +33,11 @@
namespace {
class VISIBILITY_HIDDEN FunctionProfiler : public RSProfilers_std {
public:
- static const int ID;
+ static const char ID;
bool runOnModule(Module &M);
};
- const int FunctionProfiler::ID = 0;
+ const char FunctionProfiler::ID = 0;
RegisterPass<FunctionProfiler> X("insert-function-profiling",
"Insert instrumentation for function profiling");
@@ -84,10 +84,10 @@
class BlockProfiler : public RSProfilers_std {
bool runOnModule(Module &M);
public:
- static const int ID;
+ static const char ID;
};
- const int BlockProfiler::ID = 0;
+ const char BlockProfiler::ID = 0;
RegisterPass<BlockProfiler> Y("insert-block-profiling",
"Insert instrumentation for block profiling");
RegisterAnalysisGroup<RSProfilers> YG(Y);
Index: llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp
diff -u llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp:1.13 llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp:1.14
--- llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp:1.13 Tue May 1 16:15:47 2007
+++ llvm/lib/Transforms/Instrumentation/EdgeProfiling.cpp Wed May 2 16:39:19 2007
@@ -33,11 +33,11 @@
class VISIBILITY_HIDDEN EdgeProfiler : public ModulePass {
bool runOnModule(Module &M);
public:
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
EdgeProfiler() : ModulePass((intptr_t)&ID) {}
};
- const int EdgeProfiler::ID = 0;
+ const char EdgeProfiler::ID = 0;
RegisterPass<EdgeProfiler> X("insert-edge-profiling",
"Insert instrumentation for edge profiling");
}
Index: llvm/lib/Transforms/Instrumentation/RSProfiling.cpp
diff -u llvm/lib/Transforms/Instrumentation/RSProfiling.cpp:1.25 llvm/lib/Transforms/Instrumentation/RSProfiling.cpp:1.26
--- llvm/lib/Transforms/Instrumentation/RSProfiling.cpp:1.25 Wed May 2 15:37:47 2007
+++ llvm/lib/Transforms/Instrumentation/RSProfiling.cpp Wed May 2 16:39:19 2007
@@ -69,7 +69,7 @@
/// measuring framework overhead
class VISIBILITY_HIDDEN NullProfilerRS : public RSProfilers {
public:
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
bool isProfiling(Value* v) {
return false;
}
@@ -139,7 +139,7 @@
/// ProfilerRS - Insert the random sampling framework
struct VISIBILITY_HIDDEN ProfilerRS : public FunctionPass {
- static const int ID; // Pass identifcation, replacement for typeid
+ static const char ID; // Pass identifcation, replacement for typeid
ProfilerRS() : FunctionPass((intptr_t)&ID) {}
std::map<Value*, Value*> TransCache;
@@ -162,9 +162,9 @@
"Insert random sampling instrumentation framework");
}
-const int RSProfilers::ID = 0;
-const int NullProfilerRS::ID = 0;
-const int ProfilerRS::ID = 0;
+const char RSProfilers::ID = 0;
+const char NullProfilerRS::ID = 0;
+const char ProfilerRS::ID = 0;
//Local utilities
static void ReplacePhiPred(BasicBlock* btarget,
Index: llvm/lib/Transforms/Instrumentation/RSProfiling.h
diff -u llvm/lib/Transforms/Instrumentation/RSProfiling.h:1.5 llvm/lib/Transforms/Instrumentation/RSProfiling.h:1.6
--- llvm/lib/Transforms/Instrumentation/RSProfiling.h:1.5 Tue May 1 16:15:47 2007
+++ llvm/lib/Transforms/Instrumentation/RSProfiling.h Wed May 2 16:39:19 2007
@@ -17,7 +17,7 @@
/// RSProfilers_std - a simple support class for profilers that handles most
/// of the work of chaining and tracking inserted code.
struct RSProfilers_std : public RSProfilers {
- static const int ID;
+ static const char ID;
std::set<Value*> profcode;
// Lookup up values in profcode
virtual bool isProfiling(Value* v);
More information about the llvm-commits
mailing list