Lines Matching full:loaded
460 [](IRBuilderBase &Builder, Value *Loaded) { return Loaded; });
518 Value *Loaded = Builder.CreateExtractValue(Pair, 0, "loaded");
520 LI->replaceAllUsesWith(Loaded);
575 Value *Loaded, Value *NewVal, Align AddrAlign,
586 Loaded = Builder.CreateBitCast(Loaded, IntTy);
590 Addr, Loaded, NewVal, AddrAlign, MemOpOrder,
612 auto PerformOp = [&](IRBuilderBase &Builder, Value *Loaded) {
613 return buildAtomicRMWValue(AI->getOperation(), Builder, Loaded,
729 /// ShiftAmt: Number of bits to right-shift a WordSize value loaded
731 /// ValueType was loaded from Addr.
733 /// Mask: Value to mask with the value loaded from AlignAddr to
734 /// include only the part that would've been loaded from Addr.
836 IRBuilderBase &Builder, Value *Loaded,
844 Value *Loaded_MaskOut = Builder.CreateAnd(Loaded, PMV.Inv_Mask);
856 Value *NewVal = buildAtomicRMWValue(Op, Builder, Loaded, Shifted_Inc);
858 Value *Loaded_MaskOut = Builder.CreateAnd(Loaded, PMV.Inv_Mask);
875 Value *Loaded_Extract = extractMaskedValue(Builder, Loaded, PMV);
877 Value *FinalVal = insertMaskedValue(Builder, Loaded, NewVal, PMV);
919 auto PerformPartwordOp = [&](IRBuilderBase &Builder, Value *Loaded) {
920 return performMaskedAtomicOp(Op, Builder, Loaded, ValOperand_Shifted,
1086 // Mask/Or the expected and new values into place in the loaded word.
1110 // Upon failure, verify that the masked-out part of the loaded value
1138 Value *Loaded = insertRMWLLSCLoop(Builder, ResultType, Addr, AddrAlign,
1141 I->replaceAllUsesWith(Loaded);
1216 // %loaded = @load.linked(%addr)
1217 // %new = some_op iN %loaded, %incr
1235 Value *Loaded = TLI->emitLoadLinked(Builder, ResultTy, Addr, MemOpOrder);
1237 Value *NewVal = PerformOp(Builder, Loaded);
1246 return Loaded;
1337 // %loaded.trystore = phi [%unreleasedload, %cmpxchg.releasingstore],
1339 // %updated.new = insert %new into %loaded.trystore
1354 // %loaded.nostore = phi [%unreleasedload, %cmpxchg.start],
1363 // %loaded.exit = phi [%loaded.nostore, %cmpxchg.failure],
1364 // [%loaded.trystore, %cmpxchg.trystore]
1366 // %loaded = extract value from %loaded.exit
1367 // %restmp = insertvalue { iN, i1 } undef, iN %loaded, 0
1417 Builder.CreatePHI(PMV.WordType, 2, "loaded.trystore");
1456 Builder.CreatePHI(UnreleasedLoad->getType(), 2, "loaded.nostore");
1469 Builder.CreatePHI(UnreleasedLoad->getType(), 2, "loaded.failure");
1479 // subsequent "icmp eq/ne %loaded, %oldval" into a use of an appropriate
1483 Builder.CreatePHI(UnreleasedLoad->getType(), 2, "loaded.exit");
1495 Value *Loaded = extractMaskedValue(Builder, LoadedFull, PMV);
1497 // Look for any users of the cmpxchg that are just comparing the loaded value
1509 EV->replaceAllUsesWith(Loaded);
1524 Res = Builder.CreateInsertValue(PoisonValue::get(CI->getType()), Loaded, 0);
1578 // %loaded = phi iN [ %init_loaded, %entry ], [ %new_loaded, %loop ]
1579 // %new = some_op iN %loaded, %incr
1580 // %pair = cmpxchg iN* %addr, iN %loaded, iN %new
1600 PHINode *Loaded = Builder.CreatePHI(ResultTy, 2, "loaded");
1601 Loaded->addIncoming(InitLoaded, BB);
1603 Value *NewVal = PerformOp(Builder, Loaded);
1608 CreateCmpXchg(Builder, Addr, Loaded, NewVal, AddrAlign,
1615 Loaded->addIncoming(NewLoaded, LoopBB);
1654 Value *Loaded = AtomicExpandImpl::insertRMWCmpXchgLoop(
1657 [&](IRBuilderBase &Builder, Value *Loaded) {
1658 return buildAtomicRMWValue(AI->getOperation(), Builder, Loaded,
1663 AI->replaceAllUsesWith(Loaded);
1809 I, [this](IRBuilderBase &Builder, Value *Addr, Value *Loaded,
1814 Addr, Loaded, NewVal, Alignment, MemOpOrder,