Lines Matching refs:DL
481 SDLoc DL(N); in performDivRemCombine() local
483 SDValue DivRem = DAG.getNode(Opc, DL, MVT::Glue, in performDivRemCombine()
490 SDValue CopyFromLo = DAG.getCopyFromReg(InChain, DL, LO, Ty, in performDivRemCombine()
499 SDValue CopyFromHi = DAG.getCopyFromReg(InChain, DL, in performDivRemCombine()
559 SDLoc DL(Op); in createFPCmp() local
565 return DAG.getNode(MipsISD::FPCmp, DL, MVT::Glue, LHS, RHS, in createFPCmp()
566 DAG.getConstant(condCodeToFCC(CC), DL, MVT::i32)); in createFPCmp()
571 SDValue False, SDLoc DL) { in createCMovFP() argument
576 return DAG.getNode((invert ? MipsISD::CMovFP_F : MipsISD::CMovFP_T), DL, in createCMovFP()
610 const SDLoc DL(N); in performSELECTCombine() local
616 SetCC = DAG.getSetCC(DL, SetCC.getValueType(), SetCC.getOperand(0), in performSELECTCombine()
619 return DAG.getNode(ISD::SELECT, DL, FalseTy, SetCC, False, True); in performSELECTCombine()
642 return DAG.getNode(ISD::ADD, DL, SetCC.getValueType(), SetCC, False); in performSELECTCombine()
650 SetCC = DAG.getSetCC(DL, SetCC.getValueType(), SetCC.getOperand(0), in performSELECTCombine()
652 return DAG.getNode(ISD::ADD, DL, SetCC.getValueType(), SetCC, True); in performSELECTCombine()
721 SDLoc DL(N); in performANDCombine() local
722 return DAG.getNode(MipsISD::Ext, DL, ValTy, in performANDCombine()
724 DAG.getConstant(Pos, DL, MVT::i32), in performANDCombine()
725 DAG.getConstant(SMSize, DL, MVT::i32)); in performANDCombine()
777 SDLoc DL(N); in performORCombine() local
778 return DAG.getNode(MipsISD::Ins, DL, ValTy, Shl.getOperand(0), in performORCombine()
779 DAG.getConstant(SMPos0, DL, MVT::i32), in performORCombine()
780 DAG.getConstant(SMSize0, DL, MVT::i32), in performORCombine()
804 SDLoc DL(N); in performADDCombine() local
806 SDValue Add1 = DAG.getNode(ISD::ADD, DL, ValTy, N->getOperand(0), in performADDCombine()
808 return DAG.getNode(ISD::ADD, DL, ValTy, Add1, Lo); in performADDCombine()
1065 DebugLoc DL = MI->getDebugLoc(); in emitAtomicBinary() local
1123 BuildMI(BB, DL, TII->get(LL), OldVal).addReg(Ptr).addImm(0); in emitAtomicBinary()
1127 BuildMI(BB, DL, TII->get(AND), AndRes).addReg(OldVal).addReg(Incr); in emitAtomicBinary()
1128 BuildMI(BB, DL, TII->get(NOR), StoreVal).addReg(ZERO).addReg(AndRes); in emitAtomicBinary()
1131 BuildMI(BB, DL, TII->get(BinOpcode), StoreVal).addReg(OldVal).addReg(Incr); in emitAtomicBinary()
1135 BuildMI(BB, DL, TII->get(SC), Success).addReg(StoreVal).addReg(Ptr).addImm(0); in emitAtomicBinary()
1136 BuildMI(BB, DL, TII->get(BEQ)).addReg(Success).addReg(ZERO).addMBB(loopMBB); in emitAtomicBinary()
1147 DebugLoc DL = MI->getDebugLoc(); in emitSignExtendToI32InReg() local
1150 BuildMI(BB, DL, TII->get(Mips::SEB), DstReg).addReg(SrcReg); in emitSignExtendToI32InReg()
1155 BuildMI(BB, DL, TII->get(Mips::SEH), DstReg).addReg(SrcReg); in emitSignExtendToI32InReg()
1167 BuildMI(BB, DL, TII->get(Mips::SLL), ScrReg).addReg(SrcReg).addImm(ShiftImm); in emitSignExtendToI32InReg()
1168 BuildMI(BB, DL, TII->get(Mips::SRA), DstReg).addReg(ScrReg).addImm(ShiftImm); in emitSignExtendToI32InReg()
1183 DebugLoc DL = MI->getDebugLoc(); in emitAtomicBinaryPartword() local
1238 BuildMI(BB, DL, TII->get(Mips::ADDiu), MaskLSB2) in emitAtomicBinaryPartword()
1240 BuildMI(BB, DL, TII->get(Mips::AND), AlignedAddr) in emitAtomicBinaryPartword()
1242 BuildMI(BB, DL, TII->get(Mips::ANDi), PtrLSB2).addReg(Ptr).addImm(3); in emitAtomicBinaryPartword()
1244 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(PtrLSB2).addImm(3); in emitAtomicBinaryPartword()
1247 BuildMI(BB, DL, TII->get(Mips::XORi), Off) in emitAtomicBinaryPartword()
1249 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(Off).addImm(3); in emitAtomicBinaryPartword()
1251 BuildMI(BB, DL, TII->get(Mips::ORi), MaskUpper) in emitAtomicBinaryPartword()
1253 BuildMI(BB, DL, TII->get(Mips::SLLV), Mask) in emitAtomicBinaryPartword()
1255 BuildMI(BB, DL, TII->get(Mips::NOR), Mask2).addReg(Mips::ZERO).addReg(Mask); in emitAtomicBinaryPartword()
1256 BuildMI(BB, DL, TII->get(Mips::SLLV), Incr2).addReg(Incr).addReg(ShiftAmt); in emitAtomicBinaryPartword()
1279 BuildMI(BB, DL, TII->get(LL), OldVal).addReg(AlignedAddr).addImm(0); in emitAtomicBinaryPartword()
1284 BuildMI(BB, DL, TII->get(Mips::AND), AndRes).addReg(OldVal).addReg(Incr2); in emitAtomicBinaryPartword()
1285 BuildMI(BB, DL, TII->get(Mips::NOR), BinOpRes) in emitAtomicBinaryPartword()
1287 BuildMI(BB, DL, TII->get(Mips::AND), NewVal).addReg(BinOpRes).addReg(Mask); in emitAtomicBinaryPartword()
1291 BuildMI(BB, DL, TII->get(BinOpcode), BinOpRes).addReg(OldVal).addReg(Incr2); in emitAtomicBinaryPartword()
1292 BuildMI(BB, DL, TII->get(Mips::AND), NewVal).addReg(BinOpRes).addReg(Mask); in emitAtomicBinaryPartword()
1295 BuildMI(BB, DL, TII->get(Mips::AND), NewVal).addReg(Incr2).addReg(Mask); in emitAtomicBinaryPartword()
1298 BuildMI(BB, DL, TII->get(Mips::AND), MaskedOldVal0) in emitAtomicBinaryPartword()
1300 BuildMI(BB, DL, TII->get(Mips::OR), StoreVal) in emitAtomicBinaryPartword()
1303 BuildMI(BB, DL, TII->get(SC), Success) in emitAtomicBinaryPartword()
1305 BuildMI(BB, DL, TII->get(Mips::BEQ)) in emitAtomicBinaryPartword()
1314 BuildMI(BB, DL, TII->get(Mips::AND), MaskedOldVal1) in emitAtomicBinaryPartword()
1316 BuildMI(BB, DL, TII->get(Mips::SRLV), SrlRes) in emitAtomicBinaryPartword()
1334 DebugLoc DL = MI->getDebugLoc(); in emitAtomicCmpSwap() local
1391 BuildMI(BB, DL, TII->get(LL), Dest).addReg(Ptr).addImm(0); in emitAtomicCmpSwap()
1392 BuildMI(BB, DL, TII->get(BNE)) in emitAtomicCmpSwap()
1399 BuildMI(BB, DL, TII->get(SC), Success) in emitAtomicCmpSwap()
1401 BuildMI(BB, DL, TII->get(BEQ)) in emitAtomicCmpSwap()
1420 DebugLoc DL = MI->getDebugLoc(); in emitAtomicCmpSwapPartword() local
1483 BuildMI(BB, DL, TII->get(Mips::ADDiu), MaskLSB2) in emitAtomicCmpSwapPartword()
1485 BuildMI(BB, DL, TII->get(Mips::AND), AlignedAddr) in emitAtomicCmpSwapPartword()
1487 BuildMI(BB, DL, TII->get(Mips::ANDi), PtrLSB2).addReg(Ptr).addImm(3); in emitAtomicCmpSwapPartword()
1489 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(PtrLSB2).addImm(3); in emitAtomicCmpSwapPartword()
1492 BuildMI(BB, DL, TII->get(Mips::XORi), Off) in emitAtomicCmpSwapPartword()
1494 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(Off).addImm(3); in emitAtomicCmpSwapPartword()
1496 BuildMI(BB, DL, TII->get(Mips::ORi), MaskUpper) in emitAtomicCmpSwapPartword()
1498 BuildMI(BB, DL, TII->get(Mips::SLLV), Mask) in emitAtomicCmpSwapPartword()
1500 BuildMI(BB, DL, TII->get(Mips::NOR), Mask2).addReg(Mips::ZERO).addReg(Mask); in emitAtomicCmpSwapPartword()
1501 BuildMI(BB, DL, TII->get(Mips::ANDi), MaskedCmpVal) in emitAtomicCmpSwapPartword()
1503 BuildMI(BB, DL, TII->get(Mips::SLLV), ShiftedCmpVal) in emitAtomicCmpSwapPartword()
1505 BuildMI(BB, DL, TII->get(Mips::ANDi), MaskedNewVal) in emitAtomicCmpSwapPartword()
1507 BuildMI(BB, DL, TII->get(Mips::SLLV), ShiftedNewVal) in emitAtomicCmpSwapPartword()
1516 BuildMI(BB, DL, TII->get(LL), OldVal).addReg(AlignedAddr).addImm(0); in emitAtomicCmpSwapPartword()
1517 BuildMI(BB, DL, TII->get(Mips::AND), MaskedOldVal0) in emitAtomicCmpSwapPartword()
1519 BuildMI(BB, DL, TII->get(Mips::BNE)) in emitAtomicCmpSwapPartword()
1528 BuildMI(BB, DL, TII->get(Mips::AND), MaskedOldVal1) in emitAtomicCmpSwapPartword()
1530 BuildMI(BB, DL, TII->get(Mips::OR), StoreVal) in emitAtomicCmpSwapPartword()
1533 BuildMI(BB, DL, TII->get(SC), Success) in emitAtomicCmpSwapPartword()
1535 BuildMI(BB, DL, TII->get(Mips::BEQ)) in emitAtomicCmpSwapPartword()
1543 BuildMI(BB, DL, TII->get(Mips::SRLV), SrlRes) in emitAtomicCmpSwapPartword()
1558 DebugLoc DL = MI->getDebugLoc(); in emitSEL_D() local
1566 BuildMI(*BB, II, DL, TII->get(Mips::SUBREG_TO_REG), Fc2) in emitSEL_D()
1585 SDLoc DL(Op); in lowerBR_JT() local
1591 Index = DAG.getNode(ISD::MUL, DL, PTy, Index, in lowerBR_JT()
1592 DAG.getConstant(EntrySize, DL, PTy)); in lowerBR_JT()
1593 SDValue Addr = DAG.getNode(ISD::ADD, DL, PTy, Index, Table); in lowerBR_JT()
1597 DAG.getExtLoad(ISD::SEXTLOAD, DL, PTy, Chain, Addr, in lowerBR_JT()
1606 Addr = DAG.getNode(ISD::ADD, DL, PTy, Addr, in lowerBR_JT()
1610 return DAG.getNode(ISD::BRIND, DL, MVT::Other, Chain, Addr); in lowerBR_JT()
1618 SDLoc DL(Op); in lowerBRCOND() local
1631 SDValue BrCode = DAG.getConstant(Opc, DL, MVT::i32); in lowerBRCOND()
1633 return DAG.getNode(MipsISD::FPBrcond, DL, Op.getValueType(), Chain, BrCode, in lowerBRCOND()
1654 SDLoc DL(Op); in lowerSELECT_CC() local
1657 DAG.getNode(ISD::SETCC, DL, getSetCCResultType(DAG.getDataLayout(), in lowerSELECT_CC()
1661 return DAG.getNode(ISD::SELECT, DL, Op.getValueType(), Cond, Op.getOperand(2), in lowerSELECT_CC()
1672 SDLoc DL(Op); in lowerSETCC() local
1673 SDValue True = DAG.getConstant(1, DL, MVT::i32); in lowerSETCC()
1674 SDValue False = DAG.getConstant(0, DL, MVT::i32); in lowerSETCC()
1676 return createCMovFP(DAG, Cond, True, False, DL); in lowerSETCC()
1734 SDLoc DL(GA); in lowerGlobalTLSAddress() local
1745 SDValue TGA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, Flag); in lowerGlobalTLSAddress()
1746 SDValue Argument = DAG.getNode(MipsISD::Wrapper, DL, PtrVT, in lowerGlobalTLSAddress()
1760 CLI.setDebugLoc(DL).setChain(DAG.getEntryNode()) in lowerGlobalTLSAddress()
1769 SDValue TGAHi = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, in lowerGlobalTLSAddress()
1771 SDValue Hi = DAG.getNode(MipsISD::Hi, DL, PtrVT, TGAHi); in lowerGlobalTLSAddress()
1772 SDValue TGALo = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, in lowerGlobalTLSAddress()
1774 SDValue Lo = DAG.getNode(MipsISD::Lo, DL, PtrVT, TGALo); in lowerGlobalTLSAddress()
1775 SDValue Add = DAG.getNode(ISD::ADD, DL, PtrVT, Hi, Ret); in lowerGlobalTLSAddress()
1776 return DAG.getNode(ISD::ADD, DL, PtrVT, Add, Lo); in lowerGlobalTLSAddress()
1782 SDValue TGA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, in lowerGlobalTLSAddress()
1784 TGA = DAG.getNode(MipsISD::Wrapper, DL, PtrVT, getGlobalReg(DAG, PtrVT), in lowerGlobalTLSAddress()
1786 Offset = DAG.getLoad(PtrVT, DL, in lowerGlobalTLSAddress()
1792 SDValue TGAHi = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, in lowerGlobalTLSAddress()
1794 SDValue TGALo = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, in lowerGlobalTLSAddress()
1796 SDValue Hi = DAG.getNode(MipsISD::Hi, DL, PtrVT, TGAHi); in lowerGlobalTLSAddress()
1797 SDValue Lo = DAG.getNode(MipsISD::Lo, DL, PtrVT, TGALo); in lowerGlobalTLSAddress()
1798 Offset = DAG.getNode(ISD::ADD, DL, PtrVT, Hi, Lo); in lowerGlobalTLSAddress()
1801 SDValue ThreadPointer = DAG.getNode(MipsISD::ThreadPointer, DL, PtrVT); in lowerGlobalTLSAddress()
1802 return DAG.getNode(ISD::ADD, DL, PtrVT, ThreadPointer, Offset); in lowerGlobalTLSAddress()
1843 SDLoc DL(Op); in lowerVASTART() local
1850 return DAG.getStore(Op.getOperand(0), DL, FI, Op.getOperand(1), in lowerVASTART()
1861 SDLoc DL(Node); in lowerVAARG() local
1865 DAG.getLoad(getPointerTy(DAG.getDataLayout()), DL, Chain, VAListPtr, in lowerVAARG()
1879 VAList = DAG.getNode(ISD::ADD, DL, VAList.getValueType(), VAList, in lowerVAARG()
1880 DAG.getConstant(Align - 1, DL, VAList.getValueType())); in lowerVAARG()
1882 VAList = DAG.getNode(ISD::AND, DL, VAList.getValueType(), VAList, in lowerVAARG()
1883 DAG.getConstant(-(int64_t)Align, DL, in lowerVAARG()
1891 SDValue Tmp3 = DAG.getNode(ISD::ADD, DL, VAList.getValueType(), VAList, in lowerVAARG()
1894 DL, VAList.getValueType())); in lowerVAARG()
1896 Chain = DAG.getStore(VAListLoad.getValue(1), DL, Tmp3, VAListPtr, in lowerVAARG()
1906 VAList = DAG.getNode(ISD::ADD, DL, VAListPtr.getValueType(), VAList, in lowerVAARG()
1907 DAG.getIntPtrConstant(Adjustment, DL)); in lowerVAARG()
1910 return DAG.getLoad(VT, DL, Chain, VAList, MachinePointerInfo(), false, false, in lowerVAARG()
1918 SDLoc DL(Op); in lowerFCOPYSIGN32() local
1919 SDValue Const1 = DAG.getConstant(1, DL, MVT::i32); in lowerFCOPYSIGN32()
1920 SDValue Const31 = DAG.getConstant(31, DL, MVT::i32); in lowerFCOPYSIGN32()
1926 DAG.getNode(ISD::BITCAST, DL, MVT::i32, Op.getOperand(0)) : in lowerFCOPYSIGN32()
1927 DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, Op.getOperand(0), in lowerFCOPYSIGN32()
1930 DAG.getNode(ISD::BITCAST, DL, MVT::i32, Op.getOperand(1)) : in lowerFCOPYSIGN32()
1931 DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, Op.getOperand(1), in lowerFCOPYSIGN32()
1937 SDValue E = DAG.getNode(MipsISD::Ext, DL, MVT::i32, Y, Const31, Const1); in lowerFCOPYSIGN32()
1938 Res = DAG.getNode(MipsISD::Ins, DL, MVT::i32, E, Const31, Const1, X); in lowerFCOPYSIGN32()
1945 SDValue SllX = DAG.getNode(ISD::SHL, DL, MVT::i32, X, Const1); in lowerFCOPYSIGN32()
1946 SDValue SrlX = DAG.getNode(ISD::SRL, DL, MVT::i32, SllX, Const1); in lowerFCOPYSIGN32()
1947 SDValue SrlY = DAG.getNode(ISD::SRL, DL, MVT::i32, Y, Const31); in lowerFCOPYSIGN32()
1948 SDValue SllY = DAG.getNode(ISD::SHL, DL, MVT::i32, SrlY, Const31); in lowerFCOPYSIGN32()
1949 Res = DAG.getNode(ISD::OR, DL, MVT::i32, SrlX, SllY); in lowerFCOPYSIGN32()
1953 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), Res); in lowerFCOPYSIGN32()
1955 SDValue LowX = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, in lowerFCOPYSIGN32()
1957 DAG.getConstant(0, DL, MVT::i32)); in lowerFCOPYSIGN32()
1958 return DAG.getNode(MipsISD::BuildPairF64, DL, MVT::f64, LowX, Res); in lowerFCOPYSIGN32()
1966 SDLoc DL(Op); in lowerFCOPYSIGN64() local
1967 SDValue Const1 = DAG.getConstant(1, DL, MVT::i32); in lowerFCOPYSIGN64()
1970 SDValue X = DAG.getNode(ISD::BITCAST, DL, TyX, Op.getOperand(0)); in lowerFCOPYSIGN64()
1971 SDValue Y = DAG.getNode(ISD::BITCAST, DL, TyY, Op.getOperand(1)); in lowerFCOPYSIGN64()
1976 SDValue E = DAG.getNode(MipsISD::Ext, DL, TyY, Y, in lowerFCOPYSIGN64()
1977 DAG.getConstant(WidthY - 1, DL, MVT::i32), Const1); in lowerFCOPYSIGN64()
1980 E = DAG.getNode(ISD::ZERO_EXTEND, DL, TyX, E); in lowerFCOPYSIGN64()
1982 E = DAG.getNode(ISD::TRUNCATE, DL, TyX, E); in lowerFCOPYSIGN64()
1984 SDValue I = DAG.getNode(MipsISD::Ins, DL, TyX, E, in lowerFCOPYSIGN64()
1985 DAG.getConstant(WidthX - 1, DL, MVT::i32), Const1, in lowerFCOPYSIGN64()
1987 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), I); in lowerFCOPYSIGN64()
1995 SDValue SllX = DAG.getNode(ISD::SHL, DL, TyX, X, Const1); in lowerFCOPYSIGN64()
1996 SDValue SrlX = DAG.getNode(ISD::SRL, DL, TyX, SllX, Const1); in lowerFCOPYSIGN64()
1997 SDValue SrlY = DAG.getNode(ISD::SRL, DL, TyY, Y, in lowerFCOPYSIGN64()
1998 DAG.getConstant(WidthY - 1, DL, MVT::i32)); in lowerFCOPYSIGN64()
2001 SrlY = DAG.getNode(ISD::ZERO_EXTEND, DL, TyX, SrlY); in lowerFCOPYSIGN64()
2003 SrlY = DAG.getNode(ISD::TRUNCATE, DL, TyX, SrlY); in lowerFCOPYSIGN64()
2005 SDValue SllY = DAG.getNode(ISD::SHL, DL, TyX, SrlY, in lowerFCOPYSIGN64()
2006 DAG.getConstant(WidthX - 1, DL, MVT::i32)); in lowerFCOPYSIGN64()
2007 SDValue Or = DAG.getNode(ISD::OR, DL, TyX, SrlX, SllY); in lowerFCOPYSIGN64()
2008 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), Or); in lowerFCOPYSIGN64()
2028 SDLoc DL(Op); in lowerFRAMEADDR() local
2030 DAG.getEntryNode(), DL, ABI.IsN64() ? Mips::FP_64 : Mips::FP, VT); in lowerFRAMEADDR()
2067 SDLoc DL(Op); in lowerEH_RETURN() local
2074 Chain = DAG.getCopyToReg(Chain, DL, OffsetReg, Offset, SDValue()); in lowerEH_RETURN()
2075 Chain = DAG.getCopyToReg(Chain, DL, AddrReg, Handler, Chain.getValue(1)); in lowerEH_RETURN()
2076 return DAG.getNode(MipsISD::EH_RETURN, DL, MVT::Other, Chain, in lowerEH_RETURN()
2087 SDLoc DL(Op); in lowerATOMIC_FENCE() local
2088 return DAG.getNode(MipsISD::Sync, DL, MVT::Other, Op.getOperand(0), in lowerATOMIC_FENCE()
2089 DAG.getConstant(SType, DL, MVT::i32)); in lowerATOMIC_FENCE()
2094 SDLoc DL(Op); in lowerShiftLeftParts() local
2105 SDValue Not = DAG.getNode(ISD::XOR, DL, MVT::i32, Shamt, in lowerShiftLeftParts()
2106 DAG.getConstant(-1, DL, MVT::i32)); in lowerShiftLeftParts()
2107 SDValue ShiftRight1Lo = DAG.getNode(ISD::SRL, DL, VT, Lo, in lowerShiftLeftParts()
2108 DAG.getConstant(1, DL, VT)); in lowerShiftLeftParts()
2109 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, ShiftRight1Lo, Not); in lowerShiftLeftParts()
2110 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, Hi, Shamt); in lowerShiftLeftParts()
2111 SDValue Or = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo); in lowerShiftLeftParts()
2112 SDValue ShiftLeftLo = DAG.getNode(ISD::SHL, DL, VT, Lo, Shamt); in lowerShiftLeftParts()
2113 SDValue Cond = DAG.getNode(ISD::AND, DL, MVT::i32, Shamt, in lowerShiftLeftParts()
2114 DAG.getConstant(VT.getSizeInBits(), DL, MVT::i32)); in lowerShiftLeftParts()
2115 Lo = DAG.getNode(ISD::SELECT, DL, VT, Cond, in lowerShiftLeftParts()
2116 DAG.getConstant(0, DL, VT), ShiftLeftLo); in lowerShiftLeftParts()
2117 Hi = DAG.getNode(ISD::SELECT, DL, VT, Cond, ShiftLeftLo, Or); in lowerShiftLeftParts()
2120 return DAG.getMergeValues(Ops, DL); in lowerShiftLeftParts()
2125 SDLoc DL(Op); in lowerShiftRightParts() local
2143 SDValue Not = DAG.getNode(ISD::XOR, DL, MVT::i32, Shamt, in lowerShiftRightParts()
2144 DAG.getConstant(-1, DL, MVT::i32)); in lowerShiftRightParts()
2145 SDValue ShiftLeft1Hi = DAG.getNode(ISD::SHL, DL, VT, Hi, in lowerShiftRightParts()
2146 DAG.getConstant(1, DL, VT)); in lowerShiftRightParts()
2147 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, ShiftLeft1Hi, Not); in lowerShiftRightParts()
2148 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, Lo, Shamt); in lowerShiftRightParts()
2149 SDValue Or = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo); in lowerShiftRightParts()
2151 DL, VT, Hi, Shamt); in lowerShiftRightParts()
2152 SDValue Cond = DAG.getNode(ISD::AND, DL, MVT::i32, Shamt, in lowerShiftRightParts()
2153 DAG.getConstant(VT.getSizeInBits(), DL, MVT::i32)); in lowerShiftRightParts()
2154 SDValue Ext = DAG.getNode(ISD::SRA, DL, VT, Hi, in lowerShiftRightParts()
2155 DAG.getConstant(VT.getSizeInBits() - 1, DL, VT)); in lowerShiftRightParts()
2156 Lo = DAG.getNode(ISD::SELECT, DL, VT, Cond, ShiftRightHi, Or); in lowerShiftRightParts()
2157 Hi = DAG.getNode(ISD::SELECT, DL, VT, Cond, in lowerShiftRightParts()
2158 IsSRA ? Ext : DAG.getConstant(0, DL, VT), ShiftRightHi); in lowerShiftRightParts()
2161 return DAG.getMergeValues(Ops, DL); in lowerShiftRightParts()
2169 SDLoc DL(LD); in createLoadLR() local
2173 Ptr = DAG.getNode(ISD::ADD, DL, BasePtrVT, Ptr, in createLoadLR()
2174 DAG.getConstant(Offset, DL, BasePtrVT)); in createLoadLR()
2177 return DAG.getMemIntrinsicNode(Opc, DL, VTList, Ops, MemVT, in createLoadLR()
2238 SDLoc DL(LD); in lowerLOAD() local
2239 SDValue Const32 = DAG.getConstant(32, DL, MVT::i32); in lowerLOAD()
2240 SDValue SLL = DAG.getNode(ISD::SHL, DL, MVT::i64, LWR, Const32); in lowerLOAD()
2241 SDValue SRL = DAG.getNode(ISD::SRL, DL, MVT::i64, SLL, Const32); in lowerLOAD()
2243 return DAG.getMergeValues(Ops, DL); in lowerLOAD()
2250 SDLoc DL(SD); in createStoreLR() local
2254 Ptr = DAG.getNode(ISD::ADD, DL, BasePtrVT, Ptr, in createStoreLR()
2255 DAG.getConstant(Offset, DL, BasePtrVT)); in createStoreLR()
2258 return DAG.getMemIntrinsicNode(Opc, DL, VTList, Ops, MemVT, in createStoreLR()
2337 SDLoc DL(Op); in lowerADD() local
2338 return DAG.getNode(ISD::ADD, DL, ValTy, InArgsAddr, in lowerADD()
2339 DAG.getConstant(0, DL, ValTy)); in lowerADD()
2492 SDValue Chain, SDValue Arg, SDLoc DL, in passArgOnStack() argument
2496 DAG.getNode(ISD::ADD, DL, getPointerTy(DAG.getDataLayout()), StackPtr, in passArgOnStack()
2497 DAG.getIntPtrConstant(Offset, DL)); in passArgOnStack()
2498 return DAG.getStore(Chain, DL, Arg, PtrOff, MachinePointerInfo(), false, in passArgOnStack()
2505 return DAG.getStore(Chain, DL, Arg, FIN, MachinePointerInfo(), in passArgOnStack()
2538 Chain = CLI.DAG.getCopyToReg(Chain, CLI.DL, RegsToPass[i].first, in getOpndList()
2575 SDLoc DL = CLI.DL; in LowerCall() local
2623 SDValue NextStackOffsetVal = DAG.getIntPtrConstant(NextStackOffset, DL, true); in LowerCall()
2626 Chain = DAG.getCALLSEQ_START(Chain, NextStackOffsetVal, DL); in LowerCall()
2629 DAG.getCopyFromReg(Chain, DL, ABI.IsN64() ? Mips::SP_64 : Mips::SP, in LowerCall()
2657 passByValArg(Chain, DL, RegsToPass, MemOpChains, StackPtr, MFI, DAG, Arg, in LowerCall()
2673 Arg = DAG.getNode(ISD::BITCAST, DL, LocVT, Arg); in LowerCall()
2675 SDValue Lo = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, in LowerCall()
2676 Arg, DAG.getConstant(0, DL, MVT::i32)); in LowerCall()
2677 SDValue Hi = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, in LowerCall()
2678 Arg, DAG.getConstant(1, DL, MVT::i32)); in LowerCall()
2690 Arg = DAG.getNode(ISD::BITCAST, DL, LocVT, Arg); in LowerCall()
2696 Arg = DAG.getNode(ISD::SIGN_EXTEND, DL, LocVT, Arg); in LowerCall()
2702 Arg = DAG.getNode(ISD::ZERO_EXTEND, DL, LocVT, Arg); in LowerCall()
2708 Arg = DAG.getNode(ISD::ANY_EXTEND, DL, LocVT, Arg); in LowerCall()
2716 ISD::SHL, DL, VA.getLocVT(), Arg, in LowerCall()
2717 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT())); in LowerCall()
2733 Chain, Arg, DL, IsTailCall, DAG)); in LowerCall()
2739 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, MemOpChains); in LowerCall()
2756 Callee = getAddrLocal(G, DL, Ty, DAG, ABI.IsN32() || ABI.IsN64()); in LowerCall()
2758 Callee = getAddrGlobalLargeGOT(G, DL, Ty, DAG, MipsII::MO_CALL_HI16, in LowerCall()
2763 Callee = getAddrGlobal(G, DL, Ty, DAG, MipsII::MO_GOT_CALL, Chain, in LowerCall()
2768 Callee = DAG.getTargetGlobalAddress(G->getGlobal(), DL, in LowerCall()
2780 Callee = getAddrGlobalLargeGOT(S, DL, Ty, DAG, MipsII::MO_CALL_HI16, in LowerCall()
2785 Callee = getAddrGlobal(S, DL, Ty, DAG, MipsII::MO_GOT_CALL, Chain, in LowerCall()
2800 return DAG.getNode(MipsISD::TailCall, DL, MVT::Other, Ops); in LowerCall()
2802 Chain = DAG.getNode(MipsISD::JmpLink, DL, NodeTys, Ops); in LowerCall()
2807 DAG.getIntPtrConstant(0, DL, true), InFlag, DL); in LowerCall()
2812 return LowerCallResult(Chain, InFlag, CallConv, IsVarArg, Ins, DL, DAG, in LowerCall()
2820 const SmallVectorImpl<ISD::InputArg> &Ins, SDLoc DL, SelectionDAG &DAG, in LowerCallResult() argument
2834 SDValue Val = DAG.getCopyFromReg(Chain, DL, RVLocs[i].getLocReg(), in LowerCallResult()
2845 Shift, DL, VA.getLocVT(), Val, in LowerCallResult()
2846 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT())); in LowerCallResult()
2855 Val = DAG.getNode(ISD::BITCAST, DL, VA.getValVT(), Val); in LowerCallResult()
2859 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val); in LowerCallResult()
2863 Val = DAG.getNode(ISD::AssertZext, DL, VA.getLocVT(), Val, in LowerCallResult()
2865 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val); in LowerCallResult()
2869 Val = DAG.getNode(ISD::AssertSext, DL, VA.getLocVT(), Val, in LowerCallResult()
2871 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val); in LowerCallResult()
2882 EVT ArgVT, SDLoc DL, SelectionDAG &DAG) { in UnpackFromArgumentSlot() argument
2898 Opcode, DL, VA.getLocVT(), Val, in UnpackFromArgumentSlot()
2899 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT())); in UnpackFromArgumentSlot()
2915 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val); in UnpackFromArgumentSlot()
2919 Val = DAG.getNode(ISD::AssertSext, DL, LocVT, Val, DAG.getValueType(ValVT)); in UnpackFromArgumentSlot()
2920 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val); in UnpackFromArgumentSlot()
2924 Val = DAG.getNode(ISD::AssertZext, DL, LocVT, Val, DAG.getValueType(ValVT)); in UnpackFromArgumentSlot()
2925 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val); in UnpackFromArgumentSlot()
2928 Val = DAG.getNode(ISD::BITCAST, DL, ValVT, Val); in UnpackFromArgumentSlot()
2945 SDLoc DL, SelectionDAG &DAG, in LowerFormalArguments() argument
2995 copyByValRegs(Chain, DL, OutChains, DAG, Flags, InVals, &*FuncArg, in LowerFormalArguments()
3010 SDValue ArgValue = DAG.getCopyFromReg(Chain, DL, Reg, RegVT); in LowerFormalArguments()
3012 ArgValue = UnpackFromArgumentSlot(ArgValue, VA, Ins[i].ArgVT, DL, DAG); in LowerFormalArguments()
3019 ArgValue = DAG.getNode(ISD::BITCAST, DL, ValVT, ArgValue); in LowerFormalArguments()
3024 SDValue ArgValue2 = DAG.getCopyFromReg(Chain, DL, Reg2, RegVT); in LowerFormalArguments()
3027 ArgValue = DAG.getNode(MipsISD::BuildPairF64, DL, MVT::f64, in LowerFormalArguments()
3054 LocVT, DL, Chain, FIN, in LowerFormalArguments()
3059 ArgValue = UnpackFromArgumentSlot(ArgValue, VA, Ins[i].ArgVT, DL, DAG); in LowerFormalArguments()
3076 SDValue Copy = DAG.getCopyToReg(DAG.getEntryNode(), DL, Reg, InVals[i]); in LowerFormalArguments()
3077 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, Copy, Chain); in LowerFormalArguments()
3083 writeVarArgRegs(OutChains, Chain, DL, DAG, CCInfo); in LowerFormalArguments()
3089 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, OutChains); in LowerFormalArguments()
3120 SDLoc DL, SelectionDAG &DAG) const { in LowerInterruptReturn() argument
3127 return DAG.getNode(MipsISD::ERet, DL, MVT::Other, RetOps); in LowerInterruptReturn()
3135 SDLoc DL, SelectionDAG &DAG) const { in LowerReturn() argument
3163 Val = DAG.getNode(ISD::BITCAST, DL, VA.getLocVT(), Val); in LowerReturn()
3169 Val = DAG.getNode(ISD::ANY_EXTEND, DL, VA.getLocVT(), Val); in LowerReturn()
3175 Val = DAG.getNode(ISD::ZERO_EXTEND, DL, VA.getLocVT(), Val); in LowerReturn()
3181 Val = DAG.getNode(ISD::SIGN_EXTEND, DL, VA.getLocVT(), Val); in LowerReturn()
3189 ISD::SHL, DL, VA.getLocVT(), Val, in LowerReturn()
3190 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT())); in LowerReturn()
3193 Chain = DAG.getCopyToReg(Chain, DL, VA.getLocReg(), Val, Flag); in LowerReturn()
3211 DAG.getCopyFromReg(Chain, DL, Reg, getPointerTy(DAG.getDataLayout())); in LowerReturn()
3214 Chain = DAG.getCopyToReg(Chain, DL, V0, Val, Flag); in LowerReturn()
3227 return LowerInterruptReturn(RetOps, DL, DAG); in LowerReturn()
3230 return DAG.getNode(MipsISD::Ret, DL, MVT::Other, RetOps); in LowerReturn()
3495 SDLoc DL(Op); in LowerAsmOperandForConstraint() local
3510 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3520 Result = DAG.getTargetConstant(0, DL, Type); in LowerAsmOperandForConstraint()
3530 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3540 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3550 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3560 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3570 Result = DAG.getTargetConstant(Val, DL, Type); in LowerAsmOperandForConstraint()
3585 bool MipsTargetLowering::isLegalAddressingMode(const DataLayout &DL, in isLegalAddressingMode() argument
3643 SDValue Chain, SDLoc DL, std::vector<SDValue> &OutChains, SelectionDAG &DAG, in copyByValRegs() argument
3680 SDValue StorePtr = DAG.getNode(ISD::ADD, DL, PtrTy, FIN, in copyByValRegs()
3681 DAG.getConstant(Offset, DL, PtrTy)); in copyByValRegs()
3682 SDValue Store = DAG.getStore(Chain, DL, DAG.getRegister(VReg, RegTy), in copyByValRegs()
3691 SDValue Chain, SDLoc DL, in passByValArg() argument
3712 SDValue LoadPtr = DAG.getNode(ISD::ADD, DL, PtrTy, Arg, in passByValArg()
3713 DAG.getConstant(OffsetInBytes, DL, PtrTy)); in passByValArg()
3714 SDValue LoadVal = DAG.getLoad(RegTy, DL, Chain, LoadPtr, in passByValArg()
3738 SDValue LoadPtr = DAG.getNode(ISD::ADD, DL, PtrTy, Arg, in passByValArg()
3739 DAG.getConstant(OffsetInBytes, DL, in passByValArg()
3742 ISD::ZEXTLOAD, DL, RegTy, Chain, LoadPtr, MachinePointerInfo(), in passByValArg()
3755 SDValue Shift = DAG.getNode(ISD::SHL, DL, RegTy, LoadVal, in passByValArg()
3756 DAG.getConstant(Shamt, DL, MVT::i32)); in passByValArg()
3759 Val = DAG.getNode(ISD::OR, DL, RegTy, Val, Shift); in passByValArg()
3776 SDValue Src = DAG.getNode(ISD::ADD, DL, PtrTy, Arg, in passByValArg()
3777 DAG.getConstant(OffsetInBytes, DL, PtrTy)); in passByValArg()
3778 SDValue Dst = DAG.getNode(ISD::ADD, DL, PtrTy, StackPtr, in passByValArg()
3779 DAG.getIntPtrConstant(VA.getLocMemOffset(), DL)); in passByValArg()
3780 Chain = DAG.getMemcpy(Chain, DL, Dst, Src, in passByValArg()
3781 DAG.getConstant(MemCpySize, DL, PtrTy), in passByValArg()
3789 SDValue Chain, SDLoc DL, in writeVarArgRegs() argument
3825 SDValue ArgValue = DAG.getCopyFromReg(Chain, DL, Reg, RegTy); in writeVarArgRegs()
3828 SDValue Store = DAG.getStore(Chain, DL, ArgValue, PtrOff, in writeVarArgRegs()
3890 DebugLoc DL = MI->getDebugLoc(); in emitPseudoSELECT() local
3923 BuildMI(BB, DL, TII->get(Opc)) in emitPseudoSELECT()
3928 BuildMI(BB, DL, TII->get(Opc)) in emitPseudoSELECT()
3947 BuildMI(*BB, BB->begin(), DL, in emitPseudoSELECT()