Home | History | Annotate | Download | only in Instrumentation

Lines Matching refs:Function

18 //   - Insert calls at function entry/exit.
31 #include "llvm/IR/Function.h"
55 cl::desc("Instrument function entry and exit"), cl::Hidden);
80 bool runOnFunction(Function &F);
98 Function *TsanFuncEntry;
99 Function *TsanFuncExit;
102 Function *TsanRead[kNumberOfAccessSizes];
103 Function *TsanWrite[kNumberOfAccessSizes];
104 Function *TsanAtomicLoad[kNumberOfAccessSizes];
105 Function *TsanAtomicStore[kNumberOfAccessSizes];
106 Function *TsanAtomicRMW[AtomicRMWInst::LAST_BINOP + 1][kNumberOfAccessSizes];
107 Function *TsanAtomicCAS[kNumberOfAccessSizes];
108 Function *TsanAtomicThreadFence;
109 Function *TsanAtomicSignalFence;
110 Function *TsanVptrUpdate;
127 static Function *checkInterfaceFunction(Constant *FuncOrBitcast) {
128 if (Function *F = dyn_cast<Function>(FuncOrBitcast))
131 report_fatal_error("ThreadSanitizer interface function redefined");
215 appendToGlobalCtors(M, cast<Function>(TsanInit), 0);
304 bool ThreadSanitizer::runOnFunction(Function &F) {
316 for (Function::iterator FI = F.begin(), FE = F.end();
351 // Instrument function entry/exit points if there were instrumented accesses.
471 Function *F = TsanAtomicRMW[RMWI->getOperation()][Idx];
501 Function *F = FI->getSynchScope() == SingleThread ?