reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
 1657   LLVM_DEBUG(dbgs() << "Expand integer result: "; N->dump(&DAG);
 1663   if (CustomLowerNode(N, N->getValueType(ResNo), true))
 1663   if (CustomLowerNode(N, N->getValueType(ResNo), true))
 1666   switch (N->getOpcode()) {
 1670     N->dump(&DAG); dbgs() << "\n";
 1675   case ISD::MERGE_VALUES: SplitRes_MERGE_VALUES(N, ResNo, Lo, Hi); break;
 1676   case ISD::SELECT:       SplitRes_SELECT(N, Lo, Hi); break;
 1677   case ISD::SELECT_CC:    SplitRes_SELECT_CC(N, Lo, Hi); break;
 1678   case ISD::UNDEF:        SplitRes_UNDEF(N, Lo, Hi); break;
 1680   case ISD::BITCAST:            ExpandRes_BITCAST(N, Lo, Hi); break;
 1681   case ISD::BUILD_PAIR:         ExpandRes_BUILD_PAIR(N, Lo, Hi); break;
 1682   case ISD::EXTRACT_ELEMENT:    ExpandRes_EXTRACT_ELEMENT(N, Lo, Hi); break;
 1683   case ISD::EXTRACT_VECTOR_ELT: ExpandRes_EXTRACT_VECTOR_ELT(N, Lo, Hi); break;
 1684   case ISD::VAARG:              ExpandRes_VAARG(N, Lo, Hi); break;
 1686   case ISD::ANY_EXTEND:  ExpandIntRes_ANY_EXTEND(N, Lo, Hi); break;
 1687   case ISD::AssertSext:  ExpandIntRes_AssertSext(N, Lo, Hi); break;
 1688   case ISD::AssertZext:  ExpandIntRes_AssertZext(N, Lo, Hi); break;
 1689   case ISD::BITREVERSE:  ExpandIntRes_BITREVERSE(N, Lo, Hi); break;
 1690   case ISD::BSWAP:       ExpandIntRes_BSWAP(N, Lo, Hi); break;
 1691   case ISD::Constant:    ExpandIntRes_Constant(N, Lo, Hi); break;
 1692   case ISD::ABS:         ExpandIntRes_ABS(N, Lo, Hi); break;
 1694   case ISD::CTLZ:        ExpandIntRes_CTLZ(N, Lo, Hi); break;
 1695   case ISD::CTPOP:       ExpandIntRes_CTPOP(N, Lo, Hi); break;
 1697   case ISD::CTTZ:        ExpandIntRes_CTTZ(N, Lo, Hi); break;
 1698   case ISD::FLT_ROUNDS_: ExpandIntRes_FLT_ROUNDS(N, Lo, Hi); break;
 1699   case ISD::FP_TO_SINT:  ExpandIntRes_FP_TO_SINT(N, Lo, Hi); break;
 1700   case ISD::FP_TO_UINT:  ExpandIntRes_FP_TO_UINT(N, Lo, Hi); break;
 1701   case ISD::LLROUND:     ExpandIntRes_LLROUND(N, Lo, Hi); break;
 1702   case ISD::LLRINT:      ExpandIntRes_LLRINT(N, Lo, Hi); break;
 1703   case ISD::LOAD:        ExpandIntRes_LOAD(cast<LoadSDNode>(N), Lo, Hi); break;
 1704   case ISD::MUL:         ExpandIntRes_MUL(N, Lo, Hi); break;
 1705   case ISD::READCYCLECOUNTER: ExpandIntRes_READCYCLECOUNTER(N, Lo, Hi); break;
 1706   case ISD::SDIV:        ExpandIntRes_SDIV(N, Lo, Hi); break;
 1707   case ISD::SIGN_EXTEND: ExpandIntRes_SIGN_EXTEND(N, Lo, Hi); break;
 1708   case ISD::SIGN_EXTEND_INREG: ExpandIntRes_SIGN_EXTEND_INREG(N, Lo, Hi); break;
 1709   case ISD::SREM:        ExpandIntRes_SREM(N, Lo, Hi); break;
 1710   case ISD::TRUNCATE:    ExpandIntRes_TRUNCATE(N, Lo, Hi); break;
 1711   case ISD::UDIV:        ExpandIntRes_UDIV(N, Lo, Hi); break;
 1712   case ISD::UREM:        ExpandIntRes_UREM(N, Lo, Hi); break;
 1713   case ISD::ZERO_EXTEND: ExpandIntRes_ZERO_EXTEND(N, Lo, Hi); break;
 1714   case ISD::ATOMIC_LOAD: ExpandIntRes_ATOMIC_LOAD(N, Lo, Hi); break;
 1729     std::pair<SDValue, SDValue> Tmp = ExpandAtomic(N);
 1731     ReplaceValueWith(SDValue(N, 1), Tmp.second);
 1735     AtomicSDNode *AN = cast<AtomicSDNode>(N);
 1736     SDVTList VTs = DAG.getVTList(N->getValueType(0), MVT::Other);
 1738         ISD::ATOMIC_CMP_SWAP, SDLoc(N), AN->getMemoryVT(), VTs,
 1739         N->getOperand(0), N->getOperand(1), N->getOperand(2), N->getOperand(3),
 1739         N->getOperand(0), N->getOperand(1), N->getOperand(2), N->getOperand(3),
 1739         N->getOperand(0), N->getOperand(1), N->getOperand(2), N->getOperand(3),
 1739         N->getOperand(0), N->getOperand(1), N->getOperand(2), N->getOperand(3),
 1745     SDValue Success = DAG.getSetCC(SDLoc(N), N->getValueType(1), Tmp,
 1745     SDValue Success = DAG.getSetCC(SDLoc(N), N->getValueType(1), Tmp,
 1746                                    N->getOperand(2), ISD::SETEQ);
 1749     ReplaceValueWith(SDValue(N, 1), Success);
 1750     ReplaceValueWith(SDValue(N, 2), Tmp.getValue(1));
 1756   case ISD::XOR: ExpandIntRes_Logical(N, Lo, Hi); break;
 1761   case ISD::SMIN: ExpandIntRes_MINMAX(N, Lo, Hi); break;
 1764   case ISD::SUB: ExpandIntRes_ADDSUB(N, Lo, Hi); break;
 1767   case ISD::SUBC: ExpandIntRes_ADDSUBC(N, Lo, Hi); break;
 1770   case ISD::SUBE: ExpandIntRes_ADDSUBE(N, Lo, Hi); break;
 1773   case ISD::SUBCARRY: ExpandIntRes_ADDSUBCARRY(N, Lo, Hi); break;
 1777   case ISD::SRL: ExpandIntRes_Shift(N, Lo, Hi); break;
 1780   case ISD::SSUBO: ExpandIntRes_SADDSUBO(N, Lo, Hi); break;
 1782   case ISD::USUBO: ExpandIntRes_UADDSUBO(N, Lo, Hi); break;
 1784   case ISD::SMULO: ExpandIntRes_XMULO(N, Lo, Hi); break;
 1789   case ISD::USUBSAT: ExpandIntRes_ADDSUBSAT(N, Lo, Hi); break;
 1794   case ISD::UMULFIXSAT: ExpandIntRes_MULFIX(N, Lo, Hi); break;
 1804   case ISD::VECREDUCE_UMIN: ExpandIntRes_VECREDUCE(N, Lo, Hi); break;
 1809     SetExpandedInteger(SDValue(N, ResNo), Lo, Hi);