reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/SelectionDAG/DAGCombiner.cpp
16125   SDValue Chain = ST->getChain();
16126   SDValue Value = ST->getValue();
16127   SDValue Ptr   = ST->getBasePtr();
16131   if (Value.getOpcode() == ISD::BITCAST && !ST->isTruncatingStore() &&
16132       ST->isUnindexed()) {
16140     if (((!LegalOperations && ST->isSimple()) ||
16143                                      DAG, *ST->getMemOperand())) {
16145                           ST->getPointerInfo(), ST->getAlignment(),
16145                           ST->getPointerInfo(), ST->getAlignment(),
16146                           ST->getMemOperand()->getFlags(), ST->getAAInfo());
16146                           ST->getMemOperand()->getFlags(), ST->getAAInfo());
16151   if (Value.isUndef() && ST->isUnindexed())
16155   if (OptLevel != CodeGenOpt::None && ST->isUnindexed()) {
16157       if (Align > ST->getAlignment() && ST->getSrcValueOffset() % Align == 0) {
16157       if (Align > ST->getAlignment() && ST->getSrcValueOffset() % Align == 0) {
16159             DAG.getTruncStore(Chain, SDLoc(N), Value, Ptr, ST->getPointerInfo(),
16160                               ST->getMemoryVT(), Align,
16161                               ST->getMemOperand()->getFlags(), ST->getAAInfo());
16161                               ST->getMemOperand()->getFlags(), ST->getAAInfo());
16175   if (SDValue Store = MatchStoreCombine(ST))
16178   if (ST->isUnindexed()) {
16181     if (findBetterNeighborChains(ST)) {
16184       return SDValue(ST, 0);
16186     Chain = ST->getChain();
16190   if (ST->isTruncatingStore() && ST->isUnindexed() &&
16190   if (ST->isTruncatingStore() && ST->isUnindexed() &&
16196                              ST->getMemoryVT().getScalarSizeInBits());
16203       return DAG.getTruncStore(Chain, SDLoc(N), Shorter, Ptr, ST->getMemoryVT(),
16204                                ST->getMemOperand());
16223     if (Ld->getBasePtr() == Ptr && ST->getMemoryVT() == Ld->getMemoryVT() &&
16224         ST->isUnindexed() && ST->isSimple() &&
16224         ST->isUnindexed() && ST->isSimple() &&
16235     if (ST->isUnindexed() && ST->isSimple() &&
16235     if (ST->isUnindexed() && ST->isSimple() &&
16238           ST->getMemoryVT() == ST1->getMemoryVT()) {
16246         const BaseIndexOffset STBase = BaseIndexOffset::match(ST, DAG);
16248         unsigned STBitSize = ST->getMemoryVT().getSizeInBits();
16280                 return CombineTo(ST, SDValue(NewST1, 0));
16292       && Value.getNode()->hasOneUse() && ST->isUnindexed() &&
16294                             ST->getMemoryVT())) {
16296                              Ptr, ST->getMemoryVT(), ST->getMemOperand());
16296                              Ptr, ST->getMemoryVT(), ST->getMemOperand());
16302   if (!LegalTypes || (TLI.mergeStoresAfterLegalization(ST->getMemoryVT()))) {
16307       bool Changed = MergeConsecutiveStores(ST);
16325   if (isa<ConstantFPSDNode>(ST->getValue())) {
16326     if (SDValue NewSt = replaceStoreOfFPConstant(ST))
16330   if (SDValue NewSt = splitMergedValStore(ST))