|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
lib/CodeGen/SelectionDAG/DAGCombiner.cpp 3324 return DAG.getConstant(0, SDLoc(N), VT);
3332 if (VT.isVector()) {
3339 ConstValue0.getBitWidth() == VT.getScalarSizeInBits()) &&
3342 ConstValue1.getBitWidth() == VT.getScalarSizeInBits()) &&
3359 return DAG.FoldConstantArithmetic(ISD::MUL, SDLoc(N), VT,
3365 return DAG.getNode(ISD::MUL, SDLoc(N), VT, N1, N0);
3379 return DAG.getNode(ISD::SUB, DL, VT,
3380 DAG.getConstant(0, DL, VT), N0);
3385 (!VT.isVector() || Level <= AfterLegalizeVectorOps)) {
3390 return DAG.getNode(ISD::SHL, DL, VT, N0, Trunc);
3398 return DAG.getNode(ISD::SUB, DL, VT,
3399 DAG.getConstant(0, DL, VT),
3400 DAG.getNode(ISD::SHL, DL, VT, N0,
3412 if (N1IsConst && TLI.decomposeMulByConstant(*DAG.getContext(), VT, N1)) {
3426 assert(ShAmt < VT.getScalarSizeInBits() &&
3430 DAG.getNode(ISD::SHL, DL, VT, N0, DAG.getConstant(ShAmt, DL, VT));
3430 DAG.getNode(ISD::SHL, DL, VT, N0, DAG.getConstant(ShAmt, DL, VT));
3431 SDValue R = DAG.getNode(MathOp, DL, VT, Shl, N0);
3433 R = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), R);
3433 R = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, DL, VT), R);
3442 SDValue C3 = DAG.getNode(ISD::SHL, SDLoc(N), VT, N1, N0.getOperand(1));
3444 return DAG.getNode(ISD::MUL, SDLoc(N), VT, N0.getOperand(0), C3);
3464 SDValue Mul = DAG.getNode(ISD::MUL, SDLoc(N), VT, Sh.getOperand(0), Y);
3465 return DAG.getNode(ISD::SHL, SDLoc(N), VT, Mul, Sh.getOperand(1));
3474 return DAG.getNode(ISD::ADD, SDLoc(N), VT,
3475 DAG.getNode(ISD::MUL, SDLoc(N0), VT,
3477 DAG.getNode(ISD::MUL, SDLoc(N1), VT,