Home | History | Annotate | Download | only in Instrumentation

Lines Matching full:irb

144   IRBuilder<> IRB(M.getContext());
147 "__tsan_func_entry", IRB.getVoidTy(), IRB.getInt8PtrTy(), NULL));
149 "__tsan_func_exit", IRB.getVoidTy(), NULL));
150 OrdTy = IRB.getInt32Ty();
156 ReadName, IRB.getVoidTy(), IRB.getInt8PtrTy(), NULL));
160 WriteName, IRB.getVoidTy(), IRB.getInt8PtrTy(), NULL));
172 AtomicStoreName, IRB.getVoidTy(), PtrTy, Ty, OrdTy,
206 "__tsan_vptr_update", IRB.getVoidTy(), IRB.getInt8PtrTy(),
207 IRB.getInt8PtrTy(), NULL));
209 "__tsan_vptr_read", IRB.getVoidTy(), IRB.getInt8PtrTy(), NULL));
211 "__tsan_atomic_thread_fence", IRB.getVoidTy(), OrdTy, NULL));
213 "__tsan_atomic_signal_fence", IRB.getVoidTy(), OrdTy, NULL));
216 "memmove", IRB.getInt8PtrTy(), IRB.getInt8PtrTy(),
217 IRB.getInt8PtrTy(), IntptrTy, NULL));
219 "memcpy", IRB.getInt8PtrTy(), IRB.getInt8PtrTy(), IRB.getInt8PtrTy(),
222 "memset", IRB.getInt8PtrTy(), IRB.getInt8PtrTy(), IRB.getInt32Ty(),
233 IRBuilder<> IRB(M.getContext());
234 IntptrTy = IRB.getIntPtrTy(TD);
236 IRB.getVoidTy(), NULL);
383 IRBuilder<> IRB(F.getEntryBlock().getFirstNonPHI());
384 Value *ReturnAddress = IRB.CreateCall(
386 IRB.getInt32(0));
387 IRB.CreateCall(TsanFuncEntry, ReturnAddress);
398 IRBuilder<> IRB(I);
411 StoredValue = IRB.CreateIntToPtr(StoredValue, IRB.getInt8PtrTy());
413 IRB.CreateCall2(TsanVptrUpdate,
414 IRB.CreatePointerCast(Addr, IRB.getInt8PtrTy()),
415 IRB.CreatePointerCast(StoredValue, IRB.getInt8PtrTy()));
420 IRB.CreateCall(TsanVptrLoad,
421 IRB.CreatePointerCast(Addr, IRB.getInt8PtrTy()));
426 IRB.CreateCall(OnAccessFunc, IRB.CreatePointerCast(Addr, IRB.getInt8PtrTy()));
432 static ConstantInt *createOrdering(IRBuilder<> *IRB, AtomicOrdering ord) {
444 return IRB->getInt32(v);
447 static ConstantInt *createFailOrdering(IRBuilder<> *IRB, AtomicOrdering ord) {
459 return IRB->getInt32(v);
471 IRBuilder<> IRB(I);
473 IRB.CreateCall3(MemsetFn,
474 IRB.CreatePointerCast(M->getArgOperand(0), IRB.getInt8PtrTy()),
475 IRB.CreateIntCast(M->getArgOperand(1), IRB.getInt32Ty(), false),
476 IRB.CreateIntCast(M->getArgOperand(2), IntptrTy, false));
479 IRB.CreateCall3(isa<MemCpyInst>(M) ? MemcpyFn : MemmoveFn,
480 IRB.CreatePointerCast(M->getArgOperand(0), IRB.getInt8PtrTy()),
481 IRB.CreatePointerCast(M->getArgOperand(1), IRB.getInt8PtrTy()),
482 IRB.CreateIntCast(M->getArgOperand(2), IntptrTy, false));
497 IRBuilder<> IRB(I);
505 Type *Ty = Type::getIntNTy(IRB.getContext(), BitSize);
507 Value *Args[] = {IRB.CreatePointerCast(Addr, PtrTy),
508 createOrdering(&IRB, LI->getOrdering())};
520 Type *Ty = Type::getIntNTy(IRB.getContext(), BitSize);
522 Value *Args[] = {IRB.CreatePointerCast(Addr, PtrTy),
523 IRB.CreateIntCast(SI->getValueOperand(), Ty, false),
524 createOrdering(&IRB, SI->getOrdering())};
538 Type *Ty = Type::getIntNTy(IRB.getContext(), BitSize);
540 Value *Args[] = {IRB.CreatePointerCast(Addr, PtrTy),
541 IRB.CreateIntCast(RMWI->getValOperand(), Ty, false),
542 createOrdering(&IRB, RMWI->getOrdering())};
552 Type *Ty = Type::getIntNTy(IRB.getContext(), BitSize);
554 Value *Args[] = {IRB.CreatePointerCast(Addr, PtrTy),
555 IRB.CreateIntCast(CASI->getCompareOperand(), Ty, false),
556 IRB.CreateIntCast(CASI->getNewValOperand(), Ty, false),
557 createOrdering(&IRB, CASI->getOrdering()),
558 createFailOrdering(&IRB, CASI->getOrdering())};
562 Value *Args[] = {createOrdering(&IRB, FI->getOrdering())};