Lines Matching defs:AddrModes
3140 const SmallVectorImpl<ExtAddrMode> &AddrModes) {
3160 for (const ExtAddrMode &AM : AddrModes)
4070 SmallVector<ExtAddrMode, 16> AddrModes;
4072 /// The field in which the AddrModes differ, when we have more than one.
4075 /// Are the AddrModes that we have all just equal to their original values?
4097 const ExtAddrMode &getAddrMode() const { return AddrModes[0]; }
4099 /// Add a new AddrMode if it's compatible with the AddrModes we already
4103 // Take note of if we have any non-trivial AddrModes, as we need to detect
4104 // when all AddrModes are trivial as then we would introduce a phi or select
4109 if (AddrModes.empty()) {
4110 AddrModes.emplace_back(NewAddrMode);
4118 AddrModes[0].compare(NewAddrMode);
4145 AddrModes.emplace_back(NewAddrMode);
4147 AddrModes.clear();
4157 // If we have no AddrModes then they can't be combined.
4158 if (AddrModes.size() == 0)
4162 if (AddrModes.size() == 1 || DifferentField == ExtAddrMode::NoField)
4165 // If the AddrModes we collected are all just equal to the value they are
4182 AddrModes[0].SetCombinedField(DifferentField, CommonValue, AddrModes);
4204 Type *IntPtrTy = SQ.DL.getIntPtrType(AddrModes[0].OriginalValue->getType());
4205 for (auto &AM : AddrModes) {
5755 AddressingModeCombiner AddrModes(SQ, Addr);
5816 if (!AddrModes.addNewAddrMode(NewAddrMode))
5820 // Try to combine the AddrModes we've collected. If we couldn't collect any,
5823 if (!AddrModes.combineAddrModes()) {
5830 ExtAddrMode AddrMode = AddrModes.getAddrMode();