Searched refs:RMWI (Results 1 - 15 of 15) sorted by relevance

/external/llvm/lib/Transforms/Scalar/
H A DLowerAtomic.cpp43 static bool LowerAtomicRMWInst(AtomicRMWInst *RMWI) { argument
44 IRBuilder<> Builder(RMWI);
45 Value *Ptr = RMWI->getPointerOperand();
46 Value *Val = RMWI->getValOperand();
51 switch (RMWI->getOperation()) {
92 RMWI->replaceAllUsesWith(Orig);
93 RMWI->eraseFromParent();
128 else if (AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(Inst))
129 Changed |= LowerAtomicRMWInst(RMWI);
/external/llvm/lib/Analysis/
H A DMemoryLocation.cpp57 MemoryLocation MemoryLocation::get(const AtomicRMWInst *RMWI) { argument
59 RMWI->getAAMetadata(AATags);
60 const auto &DL = RMWI->getModule()->getDataLayout();
62 return MemoryLocation(RMWI->getPointerOperand(),
63 DL.getTypeStoreSize(RMWI->getValOperand()->getType()),
/external/llvm/lib/CodeGen/
H A DAtomicExpandPass.cpp97 auto RMWI = dyn_cast<AtomicRMWInst>(I); local
99 assert((LI || SI || RMWI || CASI || isa<FenceInst>(I)) &&
115 } else if (RMWI && (isAtLeastRelease(RMWI->getOrdering()) ||
116 isAtLeastAcquire(RMWI->getOrdering()))) {
117 FenceOrdering = RMWI->getOrdering();
118 RMWI->setOrdering(Monotonic);
160 } else if (RMWI) {
166 if (isIdempotentRMW(RMWI) && simplifyIdempotentRMW(RMWI)) {
[all...]
/external/llvm/lib/IR/
H A DInstruction.cpp320 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(I1))
321 return RMWI->getOperation() == cast<AtomicRMWInst>(I2)->getOperation() &&
322 RMWI->isVolatile() == cast<AtomicRMWInst>(I2)->isVolatile() &&
323 RMWI->getOrdering() == cast<AtomicRMWInst>(I2)->getOrdering() &&
324 RMWI->getSynchScope() == cast<AtomicRMWInst>(I2)->getSynchScope();
H A DVerifier.cpp396 void visitAtomicRMWInst(AtomicRMWInst &RMWI);
2848 void Verifier::visitAtomicRMWInst(AtomicRMWInst &RMWI) { argument
2849 Assert(RMWI.getOrdering() != NotAtomic,
2850 "atomicrmw instructions must be atomic.", &RMWI);
2851 Assert(RMWI.getOrdering() != Unordered,
2852 "atomicrmw instructions cannot be unordered.", &RMWI);
2853 PointerType *PTy = dyn_cast<PointerType>(RMWI.getOperand(0)->getType());
2854 Assert(PTy, "First atomicrmw operand must be a pointer.", &RMWI);
2857 &RMWI, ElTy);
2858 checkAtomicMemAccessSize(M, ElTy, &RMWI);
[all...]
H A DAsmWriter.cpp2802 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(&I))
2803 writeAtomicRMWOperation(Out, RMWI->getOperation());
3105 } else if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(&I)) {
3106 writeAtomic(RMWI->getOrdering(), RMWI->getSynchScope());
/external/llvm/include/llvm/Analysis/
H A DMemoryLocation.h69 static MemoryLocation get(const AtomicRMWInst *RMWI);
/external/llvm/lib/Transforms/Instrumentation/
H A DThreadSanitizer.cpp537 } else if (AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(I)) {
538 Value *Addr = RMWI->getPointerOperand();
542 Function *F = TsanAtomicRMW[RMWI->getOperation()][Idx];
550 IRB.CreateIntCast(RMWI->getValOperand(), Ty, false),
551 createOrdering(&IRB, RMWI->getOrdering())};
/external/llvm/lib/Transforms/IPO/
H A DMergeFunctions.cpp1033 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(L)) {
1034 if (int Res = cmpNumbers(RMWI->getOperation(),
1037 if (int Res = cmpNumbers(RMWI->isVolatile(),
1040 if (int Res = cmpNumbers(RMWI->getOrdering(),
1043 return cmpNumbers(RMWI->getSynchScope(),
/external/clang/lib/CodeGen/
H A DCGAtomic.cpp624 llvm::AtomicRMWInst *RMWI = local
626 RMWI->setVolatile(E->isVolatile());
630 llvm::Value *Result = RMWI;
632 Result = CGF.Builder.CreateBinOp(PostOp, RMWI, LoadVal1);
H A DCGBuiltin.cpp1862 AtomicRMWInst *RMWI = Builder.CreateAtomicRMW( local
1867 RMWI->setVolatile(true);
1868 return RValue::get(Builder.CreateAdd(RMWI, ConstantInt::get(Int32Ty, 1)));
1871 AtomicRMWInst *RMWI = Builder.CreateAtomicRMW( local
1876 RMWI->setVolatile(true);
1877 return RValue::get(Builder.CreateSub(RMWI, ConstantInt::get(Int32Ty, 1)));
1880 AtomicRMWInst *RMWI = Builder.CreateAtomicRMW( local
1885 RMWI->setVolatile(true);
1886 return RValue::get(RMWI);
/external/llvm/lib/Transforms/Utils/
H A DInlineFunction.cpp576 else if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(I))
577 PtrArgs.push_back(RMWI->getPointerOperand());
H A DSimplifyCFG.cpp3457 } else if (AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(BBI)) {
3458 if (RMWI->isVolatile())
/external/llvm/include/llvm/Target/
H A DTargetLowering.h1165 lowerIdempotentRMWIntoFencedLoad(AtomicRMWInst *RMWI) const {
/external/llvm/lib/AsmParser/
H A DLLParser.cpp5970 AtomicRMWInst *RMWI =
5972 RMWI->setVolatile(isVolatile);
5973 Inst = RMWI;

Completed in 217 milliseconds