Lines Matching defs:ScaleReg
2242 // An AddrMode is (BaseGV + BaseReg + BaseOffs + ScaleReg * Scale) so it is
2932 bool matchScaledValue(Value *ScaleReg, int64_t Scale, unsigned Depth);
3247 // different offsets will be used as ScaleReg.
3590 /// Try adding ScaleReg*Scale to the current addressing mode.
3593 bool AddressingModeMatcher::matchScaledValue(Value *ScaleReg, int64_t Scale,
3595 // If Scale is 1, then this is the same as adding ScaleReg to the addressing
3598 return matchAddr(ScaleReg, Depth);
3606 if (AddrMode.Scale != 0 && AddrMode.ScaledReg != ScaleReg)
3614 TestAddrMode.ScaledReg = ScaleReg;
3623 // Okay, we decided that we can add ScaleReg+Scale to AddrMode. Check now
3624 // to see if ScaleReg is actually X+C. If so, we can turn this into adding
3627 if (isa<Instruction>(ScaleReg) && // not a constant expr.
3628 match(ScaleReg, m_Add(m_Value(AddLHS), m_ConstantInt(CI)))) {
3636 AddrModeInsts.push_back(cast<Instruction>(ScaleReg));
4667 // BaseReg and ScaleReg (global addresses are always available, as are any