cl::desc("Disable pointer hashing"));
static cl::list<string>
-TraceFuncName("tracefunc", cl::desc("trace only specific functions"),
- cl::value_desc("function"), cl::Hidden);
+TraceFuncNames("tracefunc", cl::desc("trace only specific functions"),
+ cl::value_desc("function"), cl::Hidden);
static void TraceValuesAtBBExit(BasicBlock *BB,
Function *Printf, Function* HashPtrToSeqNum,
// or if the function is in the specified list.
//
inline static bool
-TraceThisFunction(Function &func)
+TraceThisFunction(Function &F)
{
- if (TraceFuncName.size() == 0)
- return true;
+ if (TraceFuncNames.empty()) return true;
- return std::find(TraceFuncName.begin(), TraceFuncName.end(), func.getName())
- != TraceFuncName.end();
+ return std::find(TraceFuncNames.begin(), TraceFuncNames.end(), F.getName())
+ != TraceFuncNames.end();
}
Tmp.erase(Tmp.begin(), I);
I = std::find(Tmp.begin(), Tmp.end(), '%');
}
-
+ Message += Tmp;
Module *Mod = BB->getParent()->getParent();
// Turn the marker string into a global variable...
Instruction *GEP =
new GetElementPtrInst(fmtVal,
vector<Value*>(2,ConstantSInt::get(Type::LongTy, 0)),
- "trstr", InsertBefore);
+ "trstrp", InsertBefore);
// Insert a call to the hash function if this is a pointer value
if (V && isa<PointerType>(V->getType()) && !DisablePtrHashing) {
Instruction *InsertPos = BB.begin();
std::ostringstream OutStr;
- WriteAsOperand(OutStr, &F, true);
+ WriteAsOperand(OutStr, &F);
InsertPrintInst(0, &BB, InsertPos, "ENTERING FUNCTION: " + OutStr.str(),
Printf, HashPtrToSeqNum);