From 80e5ed9f77d1f9c2fe1b35602ce96dc4612d4710 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 13 Jan 2003 00:52:14 +0000 Subject: [PATCH] Make sure to handle %'s in strings correctly so that the names of BB's and functions are actually printed! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5234 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../Instrumentation/TraceValues.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/lib/Transforms/Instrumentation/TraceValues.cpp b/lib/Transforms/Instrumentation/TraceValues.cpp index 431b9bb83dd..9329b8239ac 100644 --- a/lib/Transforms/Instrumentation/TraceValues.cpp +++ b/lib/Transforms/Instrumentation/TraceValues.cpp @@ -26,8 +26,8 @@ DisablePtrHashing("tracedisablehashdisable", cl::Hidden, cl::desc("Disable pointer hashing")); static cl::list -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, @@ -37,13 +37,12 @@ static void TraceValuesAtBBExit(BasicBlock *BB, // 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(); } @@ -222,7 +221,7 @@ static void InsertPrintInst(Value *V, BasicBlock *BB, Instruction *InsertBefore, 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... @@ -232,7 +231,7 @@ static void InsertPrintInst(Value *V, BasicBlock *BB, Instruction *InsertBefore, Instruction *GEP = new GetElementPtrInst(fmtVal, vector(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(V->getType()) && !DisablePtrHashing) { @@ -350,7 +349,7 @@ static inline void InsertCodeToShowFunctionEntry(Function &F, Function *Printf, Instruction *InsertPos = BB.begin(); std::ostringstream OutStr; - WriteAsOperand(OutStr, &F, true); + WriteAsOperand(OutStr, &F); InsertPrintInst(0, &BB, InsertPos, "ENTERING FUNCTION: " + OutStr.str(), Printf, HashPtrToSeqNum); -- 2.34.1