Lines Matching defs:CmpOp0
3350 // Decide how to implement a comparison of type Cond between CmpOp0 with CmpOp1.
3351 static Comparison getCmp(SelectionDAG &DAG, SDValue CmpOp0, SDValue CmpOp1,
3358 if (CmpOp0.getOpcode() == ISD::INTRINSIC_W_CHAIN &&
3359 CmpOp0.getResNo() == 0 && CmpOp0->hasNUsesOfValue(1, 0) &&
3360 isIntrinsicWithCCAndChain(CmpOp0, Opcode, CCValid))
3361 return getIntrinsicCmp(DAG, Opcode, CmpOp0, CCValid,
3363 if (CmpOp0.getOpcode() == ISD::INTRINSIC_WO_CHAIN &&
3364 CmpOp0.getResNo() == CmpOp0->getNumValues() - 1 &&
3365 isIntrinsicWithCC(CmpOp0, Opcode, CCValid))
3366 return getIntrinsicCmp(DAG, Opcode, CmpOp0, CCValid,
3369 Comparison C(CmpOp0, CmpOp1, Chain);
3576 // Build a comparison of vectors CmpOp0 and CmpOp1 using opcode Opcode,
3580 SDValue CmpOp0,
3586 if (CmpOp0.getValueType() == MVT::v4f32 &&
3588 SDValue H0 = expandV4F32ToV2F64(DAG, 0, DL, CmpOp0, Chain);
3589 SDValue L0 = expandV4F32ToV2F64(DAG, 2, DL, CmpOp0, Chain);
3610 return DAG.getNode(Opcode, DL, VTs, Chain, CmpOp0, CmpOp1);
3612 return DAG.getNode(Opcode, DL, VT, CmpOp0, CmpOp1);
3615 // Lower a vector comparison of type CC between CmpOp0 and CmpOp1, producing
3622 SDValue CmpOp0,
3626 bool IsFP = CmpOp0.getValueType().isFloatingPoint();
3641 DL, VT, CmpOp1, CmpOp0, Chain);
3643 DL, VT, CmpOp0, CmpOp1, Chain);
3658 DL, VT, CmpOp1, CmpOp0, Chain);
3660 DL, VT, CmpOp0, CmpOp1, Chain);
3677 if (CmpOp0.getOpcode() == ISD::AND
3678 && ISD::isConstantSplatVector(CmpOp0.getOperand(1).getNode(), Mask)
3681 CmpOp0 = CmpOp0.getOperand(0);
3685 Cmp = getVectorCmp(DAG, Opcode, DL, VT, CmpOp0, CmpOp1, Chain);
3689 Cmp = getVectorCmp(DAG, Opcode, DL, VT, CmpOp1, CmpOp0, Chain);
3711 SDValue CmpOp0 = Op.getOperand(0);
3717 return lowerVectorSETCC(DAG, DL, VT, CC, CmpOp0, CmpOp1);
3719 Comparison C(getCmp(DAG, CmpOp0, CmpOp1, CC, DL));
3728 SDValue CmpOp0 = Op.getOperand(1);
3734 SDValue Res = lowerVectorSETCC(DAG, DL, VT, CC, CmpOp0, CmpOp1,
3739 Comparison C(getCmp(DAG, CmpOp0, CmpOp1, CC, DL, Chain, IsSignaling));
3749 SDValue CmpOp0 = Op.getOperand(2);
3754 Comparison C(getCmp(DAG, CmpOp0, CmpOp1, CC, DL));
3820 SDValue CmpOp0 = Op.getOperand(0);
3827 Comparison C(getCmp(DAG, CmpOp0, CmpOp1, CC, DL));