Home
last modified time | relevance | path

Searched refs:MulC (Results 1 – 6 of 6) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
H A DInstCombineShifts.cpp1166 const APInt *MulC; in visitLShr() local
1167 if (match(Op0, m_NUWMul(m_Value(X), m_APInt(MulC))) && in visitLShr()
1168 ShAmt * 2 == BitWidth && (*MulC - 1).isPowerOf2() && in visitLShr()
1169 MulC->logBase2() == ShAmt) in visitLShr()
1170 return BinaryOperator::CreateAnd(X, ConstantInt::get(Ty, *MulC - 2)); in visitLShr()
H A DInstCombineCompares.cpp1952 const APInt *MulC; in foldICmpMulConstant() local
1953 if (!match(Mul->getOperand(1), m_APInt(MulC))) in foldICmpMulConstant()
1960 if (MulC->isNegative()) in foldICmpMulConstant()
1968 if (Cmp.isEquality() && !MulC->isNullValue()) { in foldICmpMulConstant()
1970 if (Mul->hasNoSignedWrap() && C.srem(*MulC).isNullValue()) { in foldICmpMulConstant()
1971 Constant *NewC = ConstantInt::get(Mul->getType(), C.sdiv(*MulC)); in foldICmpMulConstant()
1975 if (Mul->hasNoUnsignedWrap() && C.urem(*MulC).isNullValue()) { in foldICmpMulConstant()
1976 Constant *NewC = ConstantInt::get(Mul->getType(), C.udiv(*MulC)); in foldICmpMulConstant()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DValueTracking.cpp3234 if (Constant *MulC = dyn_cast<Constant>(Mul0)) { in ComputeMultiple() local
3236 MulC->getType()->getPrimitiveSizeInBits().getFixedSize()) in ComputeMultiple()
3237 Op1C = ConstantExpr::getZExt(Op1C, MulC->getType()); in ComputeMultiple()
3239 MulC->getType()->getPrimitiveSizeInBits().getFixedSize()) in ComputeMultiple()
3240 MulC = ConstantExpr::getZExt(MulC, Op1C->getType()); in ComputeMultiple()
3243 Multiple = ConstantExpr::getMul(MulC, Op1C); in ComputeMultiple()
3258 if (Constant *MulC = dyn_cast<Constant>(Mul1)) { in ComputeMultiple() local
3260 MulC->getType()->getPrimitiveSizeInBits().getFixedSize()) in ComputeMultiple()
3261 Op0C = ConstantExpr::getZExt(Op0C, MulC->getType()); in ComputeMultiple()
3263 MulC->getType()->getPrimitiveSizeInBits().getFixedSize()) in ComputeMultiple()
[all …]
H A DInstructionSimplify.cpp2784 const APInt *MulC; in simplifyICmpWithConstant() local
2786 ((match(LHS, m_NUWMul(m_Value(), m_APIntAllowUndef(MulC))) && in simplifyICmpWithConstant()
2787 *MulC != 0 && C->urem(*MulC) != 0) || in simplifyICmpWithConstant()
2788 (match(LHS, m_NSWMul(m_Value(), m_APIntAllowUndef(MulC))) && in simplifyICmpWithConstant()
2789 *MulC != 0 && C->srem(*MulC) != 0))) in simplifyICmpWithConstant()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
H A DDAGCombiner.cpp3849 APInt MulC = ConstValue1.abs(); in visitMUL() local
3851 unsigned TZeros = MulC == 2 ? 0 : MulC.countTrailingZeros(); in visitMUL()
3852 MulC.lshrInPlace(TZeros); in visitMUL()
3853 if ((MulC - 1).isPowerOf2()) in visitMUL()
3855 else if ((MulC + 1).isPowerOf2()) in visitMUL()
3860 MathOp == ISD::ADD ? (MulC - 1).logBase2() : (MulC + 1).logBase2(); in visitMUL()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/X86/
H A DX86ISelLowering.cpp5304 APInt MulC; in decomposeMulByConstant() local
5305 if (!ISD::isConstantSplatVector(C.getNode(), MulC)) in decomposeMulByConstant()
5325 return (MulC + 1).isPowerOf2() || (MulC - 1).isPowerOf2() || in decomposeMulByConstant()
5326 (1 - MulC).isPowerOf2() || (-(MulC + 1)).isPowerOf2(); in decomposeMulByConstant()