Home
last modified time | relevance | path

Searched refs:AtomicRMWInst (Results 1 – 22 of 22) sorted by relevance

/external/llvm/lib/Transforms/Scalar/
DLowerAtomic.cpp39 static bool LowerAtomicRMWInst(AtomicRMWInst *RMWI) { in LowerAtomicRMWInst()
49 case AtomicRMWInst::Xchg: in LowerAtomicRMWInst()
52 case AtomicRMWInst::Add: in LowerAtomicRMWInst()
55 case AtomicRMWInst::Sub: in LowerAtomicRMWInst()
58 case AtomicRMWInst::And: in LowerAtomicRMWInst()
61 case AtomicRMWInst::Nand: in LowerAtomicRMWInst()
64 case AtomicRMWInst::Or: in LowerAtomicRMWInst()
67 case AtomicRMWInst::Xor: in LowerAtomicRMWInst()
70 case AtomicRMWInst::Max: in LowerAtomicRMWInst()
74 case AtomicRMWInst::Min: in LowerAtomicRMWInst()
[all …]
DSCCP.cpp505 void visitAtomicRMWInst (AtomicRMWInst &I) { markOverdefined(&I); } in visitAtomicRMWInst()
/external/llvm/lib/VMCore/
DInstruction.cpp224 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(this)) in isIdenticalToWhenDefined()
225 return RMWI->getOperation() == cast<AtomicRMWInst>(I)->getOperation() && in isIdenticalToWhenDefined()
226 RMWI->isVolatile() == cast<AtomicRMWInst>(I)->isVolatile() && in isIdenticalToWhenDefined()
227 RMWI->getOrdering() == cast<AtomicRMWInst>(I)->getOrdering() && in isIdenticalToWhenDefined()
228 RMWI->getSynchScope() == cast<AtomicRMWInst>(I)->getSynchScope(); in isIdenticalToWhenDefined()
280 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(this)) in isSameOperationAs()
281 return RMWI->getOperation() == cast<AtomicRMWInst>(I)->getOperation() && in isSameOperationAs()
282 RMWI->isVolatile() == cast<AtomicRMWInst>(I)->isVolatile() && in isSameOperationAs()
283 RMWI->getOrdering() == cast<AtomicRMWInst>(I)->getOrdering() && in isSameOperationAs()
284 RMWI->getSynchScope() == cast<AtomicRMWInst>(I)->getSynchScope(); in isSameOperationAs()
DAsmWriter.cpp663 AtomicRMWInst::BinOp Op) { in writeAtomicRMWOperation()
666 case AtomicRMWInst::Xchg: Out << " xchg"; break; in writeAtomicRMWOperation()
667 case AtomicRMWInst::Add: Out << " add"; break; in writeAtomicRMWOperation()
668 case AtomicRMWInst::Sub: Out << " sub"; break; in writeAtomicRMWOperation()
669 case AtomicRMWInst::And: Out << " and"; break; in writeAtomicRMWOperation()
670 case AtomicRMWInst::Nand: Out << " nand"; break; in writeAtomicRMWOperation()
671 case AtomicRMWInst::Or: Out << " or"; break; in writeAtomicRMWOperation()
672 case AtomicRMWInst::Xor: Out << " xor"; break; in writeAtomicRMWOperation()
673 case AtomicRMWInst::Max: Out << " max"; break; in writeAtomicRMWOperation()
674 case AtomicRMWInst::Min: Out << " min"; break; in writeAtomicRMWOperation()
[all …]
DInstructions.cpp1238 void AtomicRMWInst::Init(BinOp Operation, Value *Ptr, Value *Val, in Init()
1258 AtomicRMWInst::AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val, in AtomicRMWInst() function in AtomicRMWInst
1263 OperandTraits<AtomicRMWInst>::op_begin(this), in AtomicRMWInst()
1264 OperandTraits<AtomicRMWInst>::operands(this), in AtomicRMWInst()
1269 AtomicRMWInst::AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val, in AtomicRMWInst() function in AtomicRMWInst
1274 OperandTraits<AtomicRMWInst>::op_begin(this), in AtomicRMWInst()
1275 OperandTraits<AtomicRMWInst>::operands(this), in AtomicRMWInst()
3387 AtomicRMWInst *AtomicRMWInst::clone_impl() const { in clone_impl()
3388 AtomicRMWInst *Result = in clone_impl()
3389 new AtomicRMWInst(getOperation(),getOperand(0), getOperand(1), in clone_impl()
DVerifier.cpp286 void visitAtomicRMWInst(AtomicRMWInst &RMWI);
1434 void Verifier::visitAtomicRMWInst(AtomicRMWInst &RMWI) { in visitAtomicRMWInst()
1445 Assert1(AtomicRMWInst::FIRST_BINOP <= RMWI.getOperation() && in visitAtomicRMWInst()
1446 RMWI.getOperation() <= AtomicRMWInst::LAST_BINOP, in visitAtomicRMWInst()
/external/llvm/include/llvm/Analysis/
DAliasAnalysis.h140 Location getLocation(const AtomicRMWInst *RMWI);
350 return getModRefInfo((const AtomicRMWInst*)I, Loc); in getModRefInfo()
441 ModRefResult getModRefInfo(const AtomicRMWInst *RMW, const Location &Loc);
444 ModRefResult getModRefInfo(const AtomicRMWInst *RMW, in getModRefInfo()
/external/llvm/lib/Bitcode/Writer/
DBitcodeWriter.cpp110 static unsigned GetEncodedRMWOperation(AtomicRMWInst::BinOp Op) { in GetEncodedRMWOperation()
113 case AtomicRMWInst::Xchg: return bitc::RMW_XCHG; in GetEncodedRMWOperation()
114 case AtomicRMWInst::Add: return bitc::RMW_ADD; in GetEncodedRMWOperation()
115 case AtomicRMWInst::Sub: return bitc::RMW_SUB; in GetEncodedRMWOperation()
116 case AtomicRMWInst::And: return bitc::RMW_AND; in GetEncodedRMWOperation()
117 case AtomicRMWInst::Nand: return bitc::RMW_NAND; in GetEncodedRMWOperation()
118 case AtomicRMWInst::Or: return bitc::RMW_OR; in GetEncodedRMWOperation()
119 case AtomicRMWInst::Xor: return bitc::RMW_XOR; in GetEncodedRMWOperation()
120 case AtomicRMWInst::Max: return bitc::RMW_MAX; in GetEncodedRMWOperation()
121 case AtomicRMWInst::Min: return bitc::RMW_MIN; in GetEncodedRMWOperation()
[all …]
/external/llvm/lib/Transforms/IPO/
DMergeFunctions.cpp335 if (const AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(I1)) in isEquivalentOperation()
336 return RMWI->getOperation() == cast<AtomicRMWInst>(I2)->getOperation() && in isEquivalentOperation()
337 RMWI->isVolatile() == cast<AtomicRMWInst>(I2)->isVolatile() && in isEquivalentOperation()
338 RMWI->getOrdering() == cast<AtomicRMWInst>(I2)->getOrdering() && in isEquivalentOperation()
339 RMWI->getSynchScope() == cast<AtomicRMWInst>(I2)->getSynchScope(); in isEquivalentOperation()
/external/llvm/lib/Bitcode/Reader/
DBitcodeReader.cpp142 static AtomicRMWInst::BinOp GetDecodedRMWOperation(unsigned Val) { in GetDecodedRMWOperation()
144 default: return AtomicRMWInst::BAD_BINOP; in GetDecodedRMWOperation()
145 case bitc::RMW_XCHG: return AtomicRMWInst::Xchg; in GetDecodedRMWOperation()
146 case bitc::RMW_ADD: return AtomicRMWInst::Add; in GetDecodedRMWOperation()
147 case bitc::RMW_SUB: return AtomicRMWInst::Sub; in GetDecodedRMWOperation()
148 case bitc::RMW_AND: return AtomicRMWInst::And; in GetDecodedRMWOperation()
149 case bitc::RMW_NAND: return AtomicRMWInst::Nand; in GetDecodedRMWOperation()
150 case bitc::RMW_OR: return AtomicRMWInst::Or; in GetDecodedRMWOperation()
151 case bitc::RMW_XOR: return AtomicRMWInst::Xor; in GetDecodedRMWOperation()
152 case bitc::RMW_MAX: return AtomicRMWInst::Max; in GetDecodedRMWOperation()
[all …]
/external/llvm/lib/Target/CppBackend/
DCPPBackend.cpp1529 const AtomicRMWInst *rmwi = cast<AtomicRMWInst>(I); in printInstruction()
1534 case AtomicRMWInst::Xchg: Operation = "AtomicRMWInst::Xchg"; break; in printInstruction()
1535 case AtomicRMWInst::Add: Operation = "AtomicRMWInst::Add"; break; in printInstruction()
1536 case AtomicRMWInst::Sub: Operation = "AtomicRMWInst::Sub"; break; in printInstruction()
1537 case AtomicRMWInst::And: Operation = "AtomicRMWInst::And"; break; in printInstruction()
1538 case AtomicRMWInst::Nand: Operation = "AtomicRMWInst::Nand"; break; in printInstruction()
1539 case AtomicRMWInst::Or: Operation = "AtomicRMWInst::Or"; break; in printInstruction()
1540 case AtomicRMWInst::Xor: Operation = "AtomicRMWInst::Xor"; break; in printInstruction()
1541 case AtomicRMWInst::Max: Operation = "AtomicRMWInst::Max"; break; in printInstruction()
1542 case AtomicRMWInst::Min: Operation = "AtomicRMWInst::Min"; break; in printInstruction()
[all …]
/external/clang/lib/CodeGen/
DCGBuiltin.cpp80 llvm::AtomicRMWInst::BinOp Kind, in EmitBinaryAtomic()
114 llvm::AtomicRMWInst::BinOp Kind, in EmitBinaryAtomicPost()
796 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Add, E); in EmitBuiltinExpr()
802 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Sub, E); in EmitBuiltinExpr()
808 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Or, E); in EmitBuiltinExpr()
814 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::And, E); in EmitBuiltinExpr()
820 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Xor, E); in EmitBuiltinExpr()
824 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Min, E); in EmitBuiltinExpr()
826 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::Max, E); in EmitBuiltinExpr()
828 return EmitBinaryAtomic(*this, llvm::AtomicRMWInst::UMin, E); in EmitBuiltinExpr()
[all …]
DCGExpr.cpp2702 llvm::AtomicRMWInst::BinOp Op = llvm::AtomicRMWInst::Add; in EmitAtomicOp()
2757 Op = llvm::AtomicRMWInst::Xchg; in EmitAtomicOp()
2765 Op = llvm::AtomicRMWInst::Add; in EmitAtomicOp()
2773 Op = llvm::AtomicRMWInst::Sub; in EmitAtomicOp()
2781 Op = llvm::AtomicRMWInst::And; in EmitAtomicOp()
2789 Op = llvm::AtomicRMWInst::Or; in EmitAtomicOp()
2797 Op = llvm::AtomicRMWInst::Xor; in EmitAtomicOp()
2804 Op = llvm::AtomicRMWInst::Nand; in EmitAtomicOp()
2810 llvm::AtomicRMWInst *RMWI = in EmitAtomicOp()
/external/llvm/lib/Analysis/
DAliasAnalysis.cpp248 AliasAnalysis::getLocation(const AtomicRMWInst *RMWI) { in getLocation()
347 AliasAnalysis::getModRefInfo(const AtomicRMWInst *RMW, const Location &Loc) { in getModRefInfo()
/external/llvm/lib/AsmParser/
DLLParser.cpp3819 AtomicRMWInst::BinOp Operation; in ParseAtomicRMW()
3826 case lltok::kw_xchg: Operation = AtomicRMWInst::Xchg; break; in ParseAtomicRMW()
3827 case lltok::kw_add: Operation = AtomicRMWInst::Add; break; in ParseAtomicRMW()
3828 case lltok::kw_sub: Operation = AtomicRMWInst::Sub; break; in ParseAtomicRMW()
3829 case lltok::kw_and: Operation = AtomicRMWInst::And; break; in ParseAtomicRMW()
3830 case lltok::kw_nand: Operation = AtomicRMWInst::Nand; break; in ParseAtomicRMW()
3831 case lltok::kw_or: Operation = AtomicRMWInst::Or; break; in ParseAtomicRMW()
3832 case lltok::kw_xor: Operation = AtomicRMWInst::Xor; break; in ParseAtomicRMW()
3833 case lltok::kw_max: Operation = AtomicRMWInst::Max; break; in ParseAtomicRMW()
3834 case lltok::kw_min: Operation = AtomicRMWInst::Min; break; in ParseAtomicRMW()
[all …]
/external/llvm/include/llvm/Support/
DInstVisitor.h173 RetTy visitAtomicRMWInst(AtomicRMWInst &I) { DELEGATE(Instruction);} in visitAtomicRMWInst()
DIRBuilder.h807 AtomicRMWInst *CreateAtomicRMW(AtomicRMWInst::BinOp Op, Value *Ptr, Value *Val,
810 return Insert(new AtomicRMWInst(Op, Ptr, Val, Ordering, SynchScope));
/external/llvm/include/llvm/
DInstructions.h557 class AtomicRMWInst : public Instruction {
560 virtual AtomicRMWInst *clone_impl() const;
599 AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val,
602 AtomicRMWInst(BinOp Operation, Value *Ptr, Value *Val,
671 static inline bool classof(const AtomicRMWInst *) { return true; }
689 struct OperandTraits<AtomicRMWInst>
690 : public FixedNumOperandTraits<AtomicRMWInst,2> {
693 DEFINE_TRANSPARENT_OPERAND_ACCESSORS(AtomicRMWInst, Value)
DInstruction.def138 HANDLE_MEMORY_INST(32, AtomicRMW , AtomicRMWInst )
/external/llvm/lib/CodeGen/SelectionDAG/
DSelectionDAGBuilder.h529 void visitAtomicRMW(const AtomicRMWInst &I);
DSelectionDAGBuilder.cpp3391 void SelectionDAGBuilder::visitAtomicRMW(const AtomicRMWInst &I) { in visitAtomicRMW()
3396 case AtomicRMWInst::Xchg: NT = ISD::ATOMIC_SWAP; break; in visitAtomicRMW()
3397 case AtomicRMWInst::Add: NT = ISD::ATOMIC_LOAD_ADD; break; in visitAtomicRMW()
3398 case AtomicRMWInst::Sub: NT = ISD::ATOMIC_LOAD_SUB; break; in visitAtomicRMW()
3399 case AtomicRMWInst::And: NT = ISD::ATOMIC_LOAD_AND; break; in visitAtomicRMW()
3400 case AtomicRMWInst::Nand: NT = ISD::ATOMIC_LOAD_NAND; break; in visitAtomicRMW()
3401 case AtomicRMWInst::Or: NT = ISD::ATOMIC_LOAD_OR; break; in visitAtomicRMW()
3402 case AtomicRMWInst::Xor: NT = ISD::ATOMIC_LOAD_XOR; break; in visitAtomicRMW()
3403 case AtomicRMWInst::Max: NT = ISD::ATOMIC_LOAD_MAX; break; in visitAtomicRMW()
3404 case AtomicRMWInst::Min: NT = ISD::ATOMIC_LOAD_MIN; break; in visitAtomicRMW()
[all …]
/external/llvm/lib/Transforms/Utils/
DSimplifyCFG.cpp2375 } else if (AtomicRMWInst *RMWI = dyn_cast<AtomicRMWInst>(BBI)) { in SimplifyUnreachable()