reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
2496 C.CCMask = CCMaskForCondCode(Cond); 2497 if (C.Op0.getValueType().isFloatingPoint()) { 2498 C.CCValid = SystemZ::CCMASK_FCMP; 2499 C.Opcode = SystemZISD::FCMP; 2500 adjustForFNeg(C); 2502 C.CCValid = SystemZ::CCMASK_ICMP; 2503 C.Opcode = SystemZISD::ICMP; 2509 if (C.CCMask == SystemZ::CCMASK_CMP_EQ || 2510 C.CCMask == SystemZ::CCMASK_CMP_NE || 2511 (DAG.SignBitIsZero(C.Op0) && DAG.SignBitIsZero(C.Op1))) 2511 (DAG.SignBitIsZero(C.Op0) && DAG.SignBitIsZero(C.Op1))) 2512 C.ICmpType = SystemZICMP::Any; 2513 else if (C.CCMask & SystemZ::CCMASK_CMP_UO) 2514 C.ICmpType = SystemZICMP::UnsignedOnly; 2516 C.ICmpType = SystemZICMP::SignedOnly; 2517 C.CCMask &= ~SystemZ::CCMASK_CMP_UO; 2518 adjustForRedundantAnd(DAG, DL, C); 2519 adjustZeroCmp(DAG, DL, C); 2520 adjustSubwordCmp(DAG, DL, C); 2521 adjustForSubtraction(DAG, DL, C); 2522 adjustForLTGFR(C); 2523 adjustICmpTruncate(DAG, DL, C); 2526 if (shouldSwapCmpOperands(C)) { 2527 std::swap(C.Op0, C.Op1); 2527 std::swap(C.Op0, C.Op1); 2528 C.CCMask = reverseCCMask(C.CCMask); 2528 C.CCMask = reverseCCMask(C.CCMask); 2531 adjustForTestUnderMask(DAG, DL, C); 2532 return C;