Searched refs:Mul (Results 1 - 25 of 62) sorted by relevance

123

/freebsd-10.0-release/contrib/llvm/lib/Transforms/Scalar/
H A DReassociate.cpp393 assert(Opcode == Instruction::Mul && "Unknown associative operation!");
630 if (Opcode == Instruction::Mul && BO && BinaryOperator::isNeg(BO)) {
963 BinaryOperator *Mul = local
966 Mul->takeName(Shl);
967 Shl->replaceAllUsesWith(Mul);
968 Mul->setDebugLoc(Shl->getDebugLoc());
969 return Mul;
1006 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul);
1069 BinaryOperator *BO = isReassociableOp(V, Instruction::Mul);
1401 Value *Mul
[all...]
H A DLoopStrengthReduce.cpp305 if (const SCEVMulExpr *Mul = dyn_cast<SCEVMulExpr>(S))
306 if (Mul->getOperand(0)->isAllOnesValue()) {
307 SmallVector<const SCEV *, 4> Ops(Mul->op_begin()+1, Mul->op_end());
532 if (const SCEVMulExpr *Mul = dyn_cast<SCEVMulExpr>(LHS)) {
533 if (IgnoreSignificantBits || isMulSExtable(Mul, SE)) {
536 for (SCEVMulExpr::op_iterator I = Mul->op_begin(), E = Mul->op_end();
716 if (const SCEVMulExpr *Mul = dyn_cast<SCEVMulExpr>(S)) {
717 if (Mul
[all...]
/freebsd-10.0-release/contrib/llvm/include/llvm/IR/
H A DOperator.h76 /// which may exhibit overflow - Add, Sub, and Mul. It does not include SDiv,
114 I->getOpcode() == Instruction::Mul ||
120 CE->getOpcode() == Instruction::Mul ||
335 : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> {
H A DInstrTypes.h269 DEFINE_HELPERS(Mul, NSW) // CreateNSWMul
270 DEFINE_HELPERS(Mul, NUW) // CreateNUWMul
/freebsd-10.0-release/contrib/llvm/lib/Target/Sparc/
H A DSparcISelDAGToDAG.cpp181 SDNode *Mul = CurDAG->getMachineNode(Opcode, dl, MVT::i32, MVT::Glue, local
184 return CurDAG->SelectNodeTo(N, SP::RDY, MVT::i32, SDValue(Mul, 1));
/freebsd-10.0-release/contrib/llvm/lib/Analysis/
H A DScalarEvolution.cpp296 const SCEVMulExpr *Mul = dyn_cast<SCEVMulExpr>(this); local
297 if (!Mul) return false;
300 const SCEVConstant *SC = dyn_cast<SCEVConstant>(Mul->getOperand(0));
1403 const SCEVMulExpr *Mul = dyn_cast<SCEVMulExpr>(Ops[i]); local
1404 if (Mul && isa<SCEVConstant>(Mul->getOperand(0))) {
1406 Scale * cast<SCEVConstant>(Mul->getOperand(0))->getValue()->getValue();
1407 if (Mul->getNumOperands() == 2 && isa<SCEVAddExpr>(Mul->getOperand(1))) {
1409 const SCEVAddExpr *Add = cast<SCEVAddExpr>(Mul
1525 const SCEV *Mul = getMulExpr(Scale, Ops[i]); variable
1655 const SCEVMulExpr *Mul = cast<SCEVMulExpr>(Ops[Idx]); variable
[all...]
H A DCostModel.cpp127 case Instruction::Mul:
H A DInstructionSimplify.cpp187 /// OpCodeToExtract is Mul then this tries to turn "(A*B)+(A*C)" into "A*(B+C)".
636 // Mul distributes over Add. Try some generic simplifications based on this.
637 if (Value *V = FactorizeBinOp(Instruction::Add, Op0, Op1, Instruction::Mul,
836 // Mul distributes over Sub. Try some generic simplifications based on this.
837 if (Value *V = FactorizeBinOp(Instruction::Sub, Op0, Op1, Instruction::Mul,
971 /// SimplifyMulInst - Given operands for a Mul, see if we can
978 return ConstantFoldInstOperands(Instruction::Mul, CLHS->getType(),
1010 if (Value *V = SimplifyAssociativeBinOp(Instruction::Mul, Op0, Op1, Q,
1014 // Mul distributes over Add. Try some generic simplifications based on this.
1015 if (Value *V = ExpandBinOp(Instruction::Mul, Op
1103 OverflowingBinaryOperator *Mul = cast<OverflowingBinaryOperator>(Op0); local
[all...]
H A DValueTracking.cpp382 case Instruction::Mul: {
675 Opcode == Instruction::Mul) {
1310 case Instruction::Mul: {
/freebsd-10.0-release/contrib/llvm/lib/Target/Mips/
H A DMips16ISelDAGToDAG.cpp48 SDNode *Mul = CurDAG->getMachineNode(Opc, DL, MVT::Glue, N->getOperand(0), local
50 SDValue InFlag = SDValue(Mul, 0);
285 /// Mul with two results
/freebsd-10.0-release/contrib/llvm/lib/IR/
H A DInstruction.cpp202 case Mul: return "mul";
474 /// In LLVM, the Add, Mul, And, Or, and Xor operators are associative.
478 Opcode == Add || Opcode == Mul;
506 case Mul:
H A DConstantFold.cpp888 case Instruction::Mul: {
945 case Instruction::Mul:
1049 case Instruction::Mul:
1176 case Instruction::Mul:
/freebsd-10.0-release/contrib/llvm/include/llvm/MC/
H A DMCExpr.h344 Mul, ///< Multiplication. enumerator in enum:llvm::MCBinaryExpr::Opcode
412 return Create(Mul, LHS, RHS, Ctx);
/freebsd-10.0-release/contrib/llvm/lib/Target/XCore/
H A DXCoreISelLowering.cpp610 SDValue Mul; local
613 Mul = N->getOperand(0);
616 Mul = N->getOperand(1);
624 Mul.getOperand(0), DAG.getConstant(0, MVT::i32));
626 Mul.getOperand(1), DAG.getConstant(0, MVT::i32));
632 unsigned LHSSB = DAG.ComputeNumSignBits(Mul.getOperand(0));
633 unsigned RHSSB = DAG.ComputeNumSignBits(Mul.getOperand(1));
634 if (DAG.MaskedValueIsZero(Mul.getOperand(0), HighMask) &&
635 DAG.MaskedValueIsZero(Mul.getOperand(1), HighMask)) {
653 Mul
[all...]
/freebsd-10.0-release/contrib/llvm/lib/Transforms/ObjCARC/
H A DObjCARCUtil.cpp216 case Instruction::Mul: case Instruction::FMul:
/freebsd-10.0-release/contrib/llvm/tools/clang/include/clang/AST/
H A DStmtVisitor.h121 BINOP_FALLBACK(Mul) BINOP_FALLBACK(Div) BINOP_FALLBACK(Rem)
/freebsd-10.0-release/contrib/llvm/lib/MC/
H A DMCExpr.cpp120 case MCBinaryExpr::Mul: OS << '*'; break;
641 case MCBinaryExpr::Mul: Result = LHS * RHS; break;
/freebsd-10.0-release/contrib/llvm/lib/Transforms/Vectorize/
H A DVecUtils.cpp347 case Instruction::Mul:
499 case Instruction::Mul:
659 case Instruction::Mul:
H A DLoopVectorize.cpp1644 return Instruction::Mul;
2118 case Instruction::Mul:
3093 case Instruction::Mul:
3583 case Instruction::Mul:
3731 Cost += VF * TTI.getArithmeticInstrCost(Instruction::Mul, VectorTy);
/freebsd-10.0-release/contrib/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp51 if (I->getOpcode() == Instruction::Mul) {
177 case Instruction::Mul:
359 case Instruction::Mul:
679 case Instruction::Mul:
1020 case Instruction::Mul:
H A DInstCombineSelect.cpp87 case Instruction::Mul:
117 case Instruction::Mul:
/freebsd-10.0-release/contrib/llvm/tools/lldb/source/Expression/
H A DIRInterpreter.cpp511 case Instruction::Mul:
619 case Instruction::Mul:
675 case Instruction::Mul:
/freebsd-10.0-release/contrib/llvm/lib/Target/Hexagon/
H A DHexagonISelDAGToDAG.cpp1010 SDValue Mul = ShiftOp0; local
1011 if (Mul.getOpcode() != ISD::MUL) {
1015 SDValue MulOp0 = Mul.getOperand(0);
1016 SDValue MulOp1 = Mul.getOperand(1);
/freebsd-10.0-release/contrib/llvm/include/llvm/Support/
H A DPatternMatch.h418 inline BinaryOp_match<LHS, RHS, Instruction::Mul>
420 return BinaryOp_match<LHS, RHS, Instruction::Mul>(L, R);
/freebsd-10.0-release/contrib/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeIntegerTypes.cpp660 SDValue Mul = DAG.getNode(N->getOpcode(), DL, VTs, LHS, RHS); local
668 SDValue Hi = DAG.getNode(ISD::SRL, DL, Mul.getValueType(), Mul,
674 SDValue SExt = DAG.getNode(ISD::SIGN_EXTEND_INREG, DL, Mul.getValueType(),
675 Mul, DAG.getValueType(SmallVT));
676 Overflow = DAG.getSetCC(DL, N->getValueType(1), SExt, Mul, ISD::SETNE);
682 SDValue(Mul.getNode(), 1));
686 return Mul;

Completed in 212 milliseconds

123