Lines Matching refs:Load
327 bool canUseBlockOperation(StoreSDNode *Store, LoadSDNode *Load) const;
983 else if (auto *Load = dyn_cast<LoadSDNode>(RISBG.Input)) { in tryRISBGZero() local
984 if (Load->getMemoryVT() == MVT::i32 && in tryRISBGZero()
985 (Load->getExtensionType() == ISD::EXTLOAD || in tryRISBGZero()
986 Load->getExtensionType() == ISD::ZEXTLOAD) && in tryRISBGZero()
1074 if (auto *Load = dyn_cast<LoadSDNode>(Op0.getNode())) in tryRxSBG() local
1075 if (Load->getMemoryVT() == MVT::i8) in tryRxSBG()
1146 auto *Load = dyn_cast<LoadSDNode>(N->getOperand(1)); in tryGather() local
1147 if (!Load || !Load->hasNUsesOfValue(1, 0)) in tryGather()
1149 if (Load->getMemoryVT().getSizeInBits() != in tryGather()
1150 Load->getValueType(0).getSizeInBits()) in tryGather()
1154 if (!selectBDVAddr12Only(Load->getBasePtr(), ElemV, Base, Disp, Index) || in tryGather()
1158 SDLoc DL(Load); in tryGather()
1161 CurDAG->getTargetConstant(Elem, DL, MVT::i32), Load->getChain() in tryGather()
1164 ReplaceUses(SDValue(Load, 1), SDValue(Res, 1)); in tryGather()
1219 SDValue Load = StoredVal->getOperand(0); in isFusableLoadOpStorePattern() local
1221 if (!ISD::isNormalLoad(Load.getNode())) in isFusableLoadOpStorePattern()
1225 LoadNode = cast<LoadSDNode>(Load); in isFusableLoadOpStorePattern()
1228 if (!Load.hasOneUse()) in isFusableLoadOpStorePattern()
1241 if (Chain == Load.getValue(1)) { in isFusableLoadOpStorePattern()
1248 if (Op == Load.getValue(1)) { in isFusableLoadOpStorePattern()
1251 ChainOps.push_back(Load.getOperand(0)); in isFusableLoadOpStorePattern()
1364 LoadSDNode *Load) const { in canUseBlockOperation()
1366 if (Load->getMemoryVT() != Store->getMemoryVT()) in canUseBlockOperation()
1370 if (Load->isVolatile() || Store->isVolatile()) in canUseBlockOperation()
1374 if (Load->isInvariant() && Load->isDereferenceable()) in canUseBlockOperation()
1378 const Value *V1 = Load->getMemOperand()->getValue(); in canUseBlockOperation()
1384 uint64_t Size = Load->getMemoryVT().getStoreSize(); in canUseBlockOperation()
1385 int64_t End1 = Load->getSrcValueOffset() + Size; in canUseBlockOperation()
1390 return !AA->alias(MemoryLocation(V1, End1, Load->getAAInfo()), in canUseBlockOperation()
1396 auto *Load = cast<LoadSDNode>(Store->getValue()); in storeLoadCanUseMVC() local
1400 uint64_t Size = Load->getMemoryVT().getStoreSize(); in storeLoadCanUseMVC()
1403 if (SystemZISD::isPCREL(Load->getBasePtr().getOpcode())) in storeLoadCanUseMVC()
1410 return canUseBlockOperation(Store, Load); in storeLoadCanUseMVC()