Searched refs:AtomicRMWInst (Results 1 - 25 of 27) sorted by relevance

12

/freebsd-10.2-release/contrib/llvm/lib/Transforms/Scalar/
H A DLowerAtomic.cpp39 static bool LowerAtomicRMWInst(AtomicRMWInst *RMWI) {
49 case AtomicRMWInst::Xchg:
52 case AtomicRMWInst::Add:
55 case AtomicRMWInst::Sub:
58 case AtomicRMWInst::And:
61 case AtomicRMWInst::Nand:
64 case AtomicRMWInst::Or:
67 case AtomicRMWInst::Xor:
70 case AtomicRMWInst::Max:
74 case AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/lib/Transforms/Instrumentation/
H A DThreadSanitizer.cpp113 Function *TsanAtomicRMW[AtomicRMWInst::LAST_BINOP + 1][kNumberOfAccessSizes];
175 for (int op = AtomicRMWInst::FIRST_BINOP;
176 op <= AtomicRMWInst::LAST_BINOP; ++op) {
179 if (op == AtomicRMWInst::Xchg)
181 else if (op == AtomicRMWInst::Add)
183 else if (op == AtomicRMWInst::Sub)
185 else if (op == AtomicRMWInst::And)
187 else if (op == AtomicRMWInst::Or)
189 else if (op == AtomicRMWInst::Xor)
191 else if (op == AtomicRMWInst
[all...]
H A DBoundsChecking.cpp185 isa<AtomicRMWInst>(I))
201 } else if (AtomicRMWInst *AI = dyn_cast<AtomicRMWInst>(Inst)) {
H A DAddressSanitizer.cpp660 if (AtomicRMWInst *RMW = dyn_cast<AtomicRMWInst>(I)) {
H A DMemorySanitizer.cpp1064 assert(isa<AtomicRMWInst>(I) || isa<AtomicCmpXchgInst>(I));
1084 void visitAtomicRMWInst(AtomicRMWInst &I) {
/freebsd-10.2-release/contrib/llvm/lib/IR/
H A DInstruction.cpp315 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(this))
316 return RMWI->getOperation() == cast<AtomicRMWInst>(I)->getOperation() &&
317 RMWI->isVolatile() == cast<AtomicRMWInst>(I)->isVolatile() &&
318 RMWI->getOrdering() == cast<AtomicRMWInst>(I)->getOrdering() &&
319 RMWI->getSynchScope() == cast<AtomicRMWInst>(I)->getSynchScope();
389 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(this))
390 return RMWI->getOperation() == cast<AtomicRMWInst>(I)->getOperation() &&
391 RMWI->isVolatile() == cast<AtomicRMWInst>(
[all...]
H A DAsmWriter.cpp716 AtomicRMWInst::BinOp Op) {
719 case AtomicRMWInst::Xchg: Out << " xchg"; break;
720 case AtomicRMWInst::Add: Out << " add"; break;
721 case AtomicRMWInst::Sub: Out << " sub"; break;
722 case AtomicRMWInst::And: Out << " and"; break;
723 case AtomicRMWInst::Nand: Out << " nand"; break;
724 case AtomicRMWInst::Or: Out << " or"; break;
725 case AtomicRMWInst::Xor: Out << " xor"; break;
726 case AtomicRMWInst::Max: Out << " max"; break;
727 case AtomicRMWInst
[all...]
H A DInstructions.cpp1263 // AtomicRMWInst Implementation
1266 void AtomicRMWInst::Init(BinOp Operation, Value *Ptr, Value *Val,
1286 AtomicRMWInst::AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val, function in class:AtomicRMWInst
1291 OperandTraits<AtomicRMWInst>::op_begin(this),
1292 OperandTraits<AtomicRMWInst>::operands(this),
1297 AtomicRMWInst::AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val, function in class:AtomicRMWInst
1302 OperandTraits<AtomicRMWInst>::op_begin(this),
1303 OperandTraits<AtomicRMWInst>
[all...]
H A DCore.cpp2465 AtomicRMWInst::BinOp intop;
2467 case LLVMAtomicRMWBinOpXchg: intop = AtomicRMWInst::Xchg; break;
2468 case LLVMAtomicRMWBinOpAdd: intop = AtomicRMWInst::Add; break;
2469 case LLVMAtomicRMWBinOpSub: intop = AtomicRMWInst::Sub; break;
2470 case LLVMAtomicRMWBinOpAnd: intop = AtomicRMWInst::And; break;
2471 case LLVMAtomicRMWBinOpNand: intop = AtomicRMWInst::Nand; break;
2472 case LLVMAtomicRMWBinOpOr: intop = AtomicRMWInst::Or; break;
2473 case LLVMAtomicRMWBinOpXor: intop = AtomicRMWInst::Xor; break;
2474 case LLVMAtomicRMWBinOpMax: intop = AtomicRMWInst::Max; break;
2475 case LLVMAtomicRMWBinOpMin: intop = AtomicRMWInst
[all...]
H A DVerifier.cpp318 void visitAtomicRMWInst(AtomicRMWInst &RMWI);
1899 void Verifier::visitAtomicRMWInst(AtomicRMWInst &RMWI) {
1917 Assert1(AtomicRMWInst::FIRST_BINOP <= RMWI.getOperation() &&
1918 RMWI.getOperation() <= AtomicRMWInst::LAST_BINOP,
/freebsd-10.2-release/contrib/llvm/include/llvm/Analysis/
H A DAliasAnalysis.h148 Location getLocation(const AtomicRMWInst *RMWI);
363 return getModRefInfo((const AtomicRMWInst*)I, Loc);
454 ModRefResult getModRefInfo(const AtomicRMWInst *RMW, const Location &Loc);
457 ModRefResult getModRefInfo(const AtomicRMWInst *RMW,
/freebsd-10.2-release/contrib/llvm/tools/clang/lib/CodeGen/
H A DCGAtomic.cpp191 llvm::AtomicRMWInst::BinOp Op = llvm::AtomicRMWInst::Add;
246 Op = llvm::AtomicRMWInst::Xchg;
254 Op = llvm::AtomicRMWInst::Add;
262 Op = llvm::AtomicRMWInst::Sub;
270 Op = llvm::AtomicRMWInst::And;
278 Op = llvm::AtomicRMWInst::Or;
286 Op = llvm::AtomicRMWInst::Xor;
293 Op = llvm::AtomicRMWInst::Nand;
299 llvm::AtomicRMWInst *RMW
[all...]
H A DCGBuiltin.cpp81 llvm::AtomicRMWInst::BinOp Kind,
114 llvm::AtomicRMWInst::BinOp Kind,
873 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Add, E);
879 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Sub, E);
885 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Or, E);
891 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::And, E);
897 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Xor, E);
901 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Min, E);
903 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Max, E);
905 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst
[all...]
H A DCGExprScalar.cpp1559 return Builder.CreateAtomicRMW(llvm::AtomicRMWInst::Xchg,
1570 llvm::AtomicRMWInst::BinOp aop = isInc ? llvm::AtomicRMWInst::Add :
1571 llvm::AtomicRMWInst::Sub;
2011 llvm::AtomicRMWInst::BinOp aop = llvm::AtomicRMWInst::BAD_BINOP;
2020 aop = llvm::AtomicRMWInst::Add;
2023 aop = llvm::AtomicRMWInst::Sub;
2026 aop = llvm::AtomicRMWInst::And;
2029 aop = llvm::AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/lib/Bitcode/Writer/
H A DBitcodeWriter.cpp109 static unsigned GetEncodedRMWOperation(AtomicRMWInst::BinOp Op) {
112 case AtomicRMWInst::Xchg: return bitc::RMW_XCHG;
113 case AtomicRMWInst::Add: return bitc::RMW_ADD;
114 case AtomicRMWInst::Sub: return bitc::RMW_SUB;
115 case AtomicRMWInst::And: return bitc::RMW_AND;
116 case AtomicRMWInst::Nand: return bitc::RMW_NAND;
117 case AtomicRMWInst::Or: return bitc::RMW_OR;
118 case AtomicRMWInst::Xor: return bitc::RMW_XOR;
119 case AtomicRMWInst::Max: return bitc::RMW_MAX;
120 case AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/lib/Transforms/IPO/
H A DMergeFunctions.cpp346 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(I1))
347 return RMWI->getOperation() == cast<AtomicRMWInst>(I2)->getOperation() &&
348 RMWI->isVolatile() == cast<AtomicRMWInst>(I2)->isVolatile() &&
349 RMWI->getOrdering() == cast<AtomicRMWInst>(I2)->getOrdering() &&
350 RMWI->getSynchScope() == cast<AtomicRMWInst>(I2)->getSynchScope();
/freebsd-10.2-release/contrib/llvm/lib/Target/CppBackend/
H A DCPPBackend.cpp1562 const AtomicRMWInst *rmwi = cast<AtomicRMWInst>(I);
1567 case AtomicRMWInst::Xchg: Operation = "AtomicRMWInst::Xchg"; break;
1568 case AtomicRMWInst::Add: Operation = "AtomicRMWInst::Add"; break;
1569 case AtomicRMWInst::Sub: Operation = "AtomicRMWInst::Sub"; break;
1570 case AtomicRMWInst::And: Operation = "AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/lib/Bitcode/Reader/
H A DBitcodeReader.cpp158 static AtomicRMWInst::BinOp GetDecodedRMWOperation(unsigned Val) {
160 default: return AtomicRMWInst::BAD_BINOP;
161 case bitc::RMW_XCHG: return AtomicRMWInst::Xchg;
162 case bitc::RMW_ADD: return AtomicRMWInst::Add;
163 case bitc::RMW_SUB: return AtomicRMWInst::Sub;
164 case bitc::RMW_AND: return AtomicRMWInst::And;
165 case bitc::RMW_NAND: return AtomicRMWInst::Nand;
166 case bitc::RMW_OR: return AtomicRMWInst::Or;
167 case bitc::RMW_XOR: return AtomicRMWInst::Xor;
168 case bitc::RMW_MAX: return AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/lib/Analysis/
H A DAliasAnalysis.cpp253 AliasAnalysis::getLocation(const AtomicRMWInst *RMWI) {
352 AliasAnalysis::getModRefInfo(const AtomicRMWInst *RMW, const Location &Loc) {
/freebsd-10.2-release/contrib/llvm/include/llvm/
H A DInstVisitor.h178 RetTy visitAtomicRMWInst(AtomicRMWInst &I) { DELEGATE(Instruction);}
/freebsd-10.2-release/contrib/llvm/lib/AsmParser/
H A DLLParser.cpp4210 AtomicRMWInst::BinOp Operation;
4217 case lltok::kw_xchg: Operation = AtomicRMWInst::Xchg; break;
4218 case lltok::kw_add: Operation = AtomicRMWInst::Add; break;
4219 case lltok::kw_sub: Operation = AtomicRMWInst::Sub; break;
4220 case lltok::kw_and: Operation = AtomicRMWInst::And; break;
4221 case lltok::kw_nand: Operation = AtomicRMWInst::Nand; break;
4222 case lltok::kw_or: Operation = AtomicRMWInst::Or; break;
4223 case lltok::kw_xor: Operation = AtomicRMWInst::Xor; break;
4224 case lltok::kw_max: Operation = AtomicRMWInst::Max; break;
4225 case lltok::kw_min: Operation = AtomicRMWInst
[all...]
/freebsd-10.2-release/contrib/llvm/include/llvm/IR/
H A DInstructions.h549 // AtomicRMWInst Class
552 /// AtomicRMWInst - an instruction that atomically reads a memory location,
556 class AtomicRMWInst : public Instruction { class in namespace:llvm
559 virtual AtomicRMWInst *clone_impl() const;
598 AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val,
601 AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val,
688 struct OperandTraits<AtomicRMWInst>
689 : public FixedNumOperandTraits<AtomicRMWInst,2> {
692 DEFINE_TRANSPARENT_OPERAND_ACCESSORS(AtomicRMWInst, Value)
H A DIRBuilder.h926 AtomicRMWInst *CreateAtomicRMW(AtomicRMWInst::BinOp Op, Value *Ptr, Value *Val,
929 return Insert(new AtomicRMWInst(Op, Ptr, Val, Ordering, SynchScope));
/freebsd-10.2-release/contrib/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGBuilder.h741 void visitAtomicRMW(const AtomicRMWInst &I);
H A DSelectionDAGBuilder.cpp3576 void SelectionDAGBuilder::visitAtomicRMW(const AtomicRMWInst &I) {
3581 case AtomicRMWInst::Xchg: NT = ISD::ATOMIC_SWAP; break;
3582 case AtomicRMWInst::Add: NT = ISD::ATOMIC_LOAD_ADD; break;
3583 case AtomicRMWInst::Sub: NT = ISD::ATOMIC_LOAD_SUB; break;
3584 case AtomicRMWInst::And: NT = ISD::ATOMIC_LOAD_AND; break;
3585 case AtomicRMWInst::Nand: NT = ISD::ATOMIC_LOAD_NAND; break;
3586 case AtomicRMWInst::Or: NT = ISD::ATOMIC_LOAD_OR; break;
3587 case AtomicRMWInst::Xor: NT = ISD::ATOMIC_LOAD_XOR; break;
3588 case AtomicRMWInst::Max: NT = ISD::ATOMIC_LOAD_MAX; break;
3589 case AtomicRMWInst
[all...]

Completed in 309 milliseconds

12