Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:Value

61         Instruction *I, Value *Addr, AtomicOrdering MemOpOrder,
62 std::function<Value *(IRBuilder<> &, Value *)> PerformOp);
218 Value *Addr = LI->getPointerOperand();
221 Value *NewAddr = Builder.CreateBitCast(Addr, PT);
229 Value *NewVal = Builder.CreateBitCast(NewLI, LI->getType());
242 [](IRBuilder<> &Builder, Value *Loaded) { return Loaded; });
257 Value *Val =
270 Value *Addr = LI->getPointerOperand();
274 Value *Pair = Builder.CreateAtomicCmpXchg(
277 Value *Loaded = Builder.CreateExtractValue(Pair, 0, "loaded");
298 Value *NewVal = Builder.CreateBitCast(SI->getValueOperand(), NewTy);
300 Value *Addr = SI->getPointerOperand();
303 Value *NewAddr = Builder.CreateBitCast(Addr, PT);
331 static void createCmpXchgInstFun(IRBuilder<> &Builder, Value *Addr,
332 Value *Loaded, Value *NewVal,
334 Value *&Success, Value *&NewLoaded) {
335 Value* Pair = Builder.CreateAtomicCmpXchg(
343 /// returning the new value.
344 static Value *performAtomicOp(AtomicRMWInst::BinOp Op, IRBuilder<> &Builder,
345 Value *Loaded, Value *Inc) {
346 Value *NewVal;
385 [&](IRBuilder<> &Builder, Value *Loaded) {
398 Instruction *I, Value *Addr, AtomicOrdering MemOpOrder,
399 std::function<Value *(IRBuilder<> &, Value *)> PerformOp) {
433 Value *Loaded = TLI->emitLoadLinked(Builder, Addr, MemOpOrder);
435 Value *NewVal = PerformOp(Builder, Loaded);
437 Value *StoreSuccess =
439 Value *TryAgain = Builder.CreateICmpNE(
454 Value *Addr = CI->getPointerOperand();
514 Value *Loaded = TLI->emitLoadLinked(Builder, Addr, MemOpOrder);
515 Value *ShouldStore =
523 Value *StoreSuccess = TLI->emitStoreConditional(
558 // Look for any users of the cmpxchg that are just comparing the loaded value
584 Value *Res;
629 Value *Addr = AI->getPointerOperand();
670 Value *NewVal =
673 Value *NewLoaded = nullptr;
674 Value *Success = nullptr;