reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
21974 if (Cond.getOpcode() == ISD::SETCC) { 21976 if (cast<CondCodeSDNode>(Cond.getOperand(2))->get() == ISD::SETEQ && 21977 isNullConstant(Cond.getOperand(1)) && 21978 Cond.getOperand(0).getResNo() == 1 && 21979 (Cond.getOperand(0).getOpcode() == ISD::SADDO || 21980 Cond.getOperand(0).getOpcode() == ISD::UADDO || 21981 Cond.getOperand(0).getOpcode() == ISD::SSUBO || 21982 Cond.getOperand(0).getOpcode() == ISD::USUBO || 21983 Cond.getOperand(0).getOpcode() == ISD::SMULO || 21984 Cond.getOperand(0).getOpcode() == ISD::UMULO)) { 21986 Cond = Cond.getOperand(0); 21986 Cond = Cond.getOperand(0); 21988 if (SDValue NewCond = LowerSETCC(Cond, DAG)) 21989 Cond = NewCond; 22002 if (Cond.getOpcode() == ISD::AND && 22003 Cond.getOperand(0).getOpcode() == X86ISD::SETCC_CARRY && 22004 isOneConstant(Cond.getOperand(1))) 22005 Cond = Cond.getOperand(0); 22005 Cond = Cond.getOperand(0); 22009 unsigned CondOpcode = Cond.getOpcode(); 22012 CC = Cond.getOperand(0); 22014 SDValue Cmp = Cond.getOperand(1); 22018 Cond = Cmp; 22027 Cond = Cond.getOperand(1); 22027 Cond = Cond.getOperand(1); 22033 CondOpcode = Cond.getOpcode(); 22039 std::tie(Value, Cond) = getX86XALUOOp(X86Cond, Cond.getValue(0), DAG); 22039 std::tie(Value, Cond) = getX86XALUOOp(X86Cond, Cond.getValue(0), DAG); 22048 if (Cond.hasOneUse() && isAndOrOfSetCCs(Cond, CondOpc)) { 22048 if (Cond.hasOneUse() && isAndOrOfSetCCs(Cond, CondOpc)) { 22049 SDValue Cmp = Cond.getOperand(0).getOperand(1); 22054 if (Cmp == Cond.getOperand(1).getOperand(1) && 22056 CC = Cond.getOperand(0).getOperand(0); 22059 CC = Cond.getOperand(1).getOperand(0); 22060 Cond = Cmp; 22069 if (Cmp == Cond.getOperand(1).getOperand(1) && 22073 (X86::CondCode)Cond.getOperand(0).getConstantOperandVal(0); 22091 (X86::CondCode)Cond.getOperand(1).getConstantOperandVal(0); 22094 Cond = Cmp; 22099 } else if (Cond.hasOneUse() && isXor1OfSetCC(Cond)) { 22099 } else if (Cond.hasOneUse() && isXor1OfSetCC(Cond)) { 22104 (X86::CondCode)Cond.getOperand(0).getConstantOperandVal(0); 22107 Cond = Cond.getOperand(0).getOperand(1); 22107 Cond = Cond.getOperand(0).getOperand(1); 22109 } else if (Cond.getOpcode() == ISD::SETCC && 22110 cast<CondCodeSDNode>(Cond.getOperand(2))->get() == ISD::SETOEQ) { 22130 Cond.getOperand(0), Cond.getOperand(1)); 22130 Cond.getOperand(0), Cond.getOperand(1)); 22136 Cond = Cmp; 22140 } else if (Cond.getOpcode() == ISD::SETCC && 22141 cast<CondCodeSDNode>(Cond.getOperand(2))->get() == ISD::SETUNE) { 22146 Cond.getOperand(0), Cond.getOperand(1)); 22146 Cond.getOperand(0), Cond.getOperand(1)); 22152 Cond = Cmp; 22159 if (isTruncWithZeroHighBitsInput(Cond, DAG)) 22160 Cond = Cond.getOperand(0); 22160 Cond = Cond.getOperand(0); 22164 if (Cond.getOpcode() == ISD::AND && Cond.hasOneUse()) { 22164 if (Cond.getOpcode() == ISD::AND && Cond.hasOneUse()) { 22166 if (SDValue BT = LowerAndToBT(Cond, ISD::SETNE, dl, DAG, BTCC)) { 22168 Cond = BT; 22177 Cond = EmitCmp(Cond, DAG.getConstant(0, dl, Cond.getValueType()), 22177 Cond = EmitCmp(Cond, DAG.getConstant(0, dl, Cond.getValueType()), 22177 Cond = EmitCmp(Cond, DAG.getConstant(0, dl, Cond.getValueType()), 22180 Cond = ConvertCmpIfNecessary(Cond, DAG); 22180 Cond = ConvertCmpIfNecessary(Cond, DAG); 22182 Chain, Dest, CC, Cond);