• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/Mips/

Lines Matching defs:DL

578   SDLoc DL(N);
580 SDValue DivRem = DAG.getNode(Opc, DL, MVT::Glue,
587 SDValue CopyFromLo = DAG.getCopyFromReg(InChain, DL, LO, Ty,
596 SDValue CopyFromHi = DAG.getCopyFromReg(InChain, DL,
655 SDLoc DL(Op);
661 return DAG.getNode(MipsISD::FPCmp, DL, MVT::Glue, LHS, RHS,
662 DAG.getConstant(condCodeToFCC(CC), DL, MVT::i32));
667 SDValue False, const SDLoc &DL) {
672 return DAG.getNode((invert ? MipsISD::CMovFP_F : MipsISD::CMovFP_T), DL,
706 const SDLoc DL(N);
712 SetCC = DAG.getSetCC(DL, SetCC.getValueType(), SetCC.getOperand(0),
716 return DAG.getNode(ISD::SELECT, DL, FalseTy, SetCC, False, True);
739 return DAG.getNode(ISD::ADD, DL, SetCC.getValueType(), SetCC, False);
747 SetCC = DAG.getSetCC(DL, SetCC.getValueType(), SetCC.getOperand(0),
750 return DAG.getNode(ISD::ADD, DL, SetCC.getValueType(), SetCC, True);
794 SDLoc DL(N);
861 return DAG.getNode(Opc, DL, ValTy, NewOperand,
862 DAG.getConstant(Pos, DL, MVT::i32),
863 DAG.getConstant(SMSize, DL, MVT::i32));
913 SDLoc DL(N);
914 return DAG.getNode(MipsISD::Ins, DL, ValTy, Shl.getOperand(0),
915 DAG.getConstant(SMPos0, DL, MVT::i32),
916 DAG.getConstant(SMSize0, DL, MVT::i32),
940 SDLoc DL(N);
945 Const1 = DAG.getConstant(SMPos0, DL, MVT::i32);
946 SrlX = DAG.getNode(ISD::SRL, DL, And1->getValueType(0), And1, Const1);
949 MipsISD::Ins, DL, N->getValueType(0),
951 ? DAG.getConstant(CN1->getSExtValue() >> SMPos0, DL, ValTy)
953 DAG.getConstant(SMPos0, DL, MVT::i32),
956 DL, MVT::i32),
1028 SDLoc DL(ROOTNode);
1031 BottomHalf = CurDAG.getNode(ISD::EXTRACT_ELEMENT, DL, MVT::i32, AddOperand,
1032 CurDAG.getIntPtrConstant(0, DL));
1034 TopHalf = CurDAG.getNode(ISD::EXTRACT_ELEMENT, DL, MVT::i32, AddOperand,
1035 CurDAG.getIntPtrConstant(1, DL));
1036 SDValue ACCIn = CurDAG.getNode(MipsISD::MTLOHI, DL, MVT::Untyped,
1045 CurDAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Mult->getOperand(0)),
1046 CurDAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Mult->getOperand(1)), ACCIn};
1048 SDValue MAdd = CurDAG.getNode(Opcode, DL, VTs, MAddOps);
1050 SDValue ResLo = CurDAG.getNode(MipsISD::MFLO, DL, MVT::i32, MAdd);
1051 SDValue ResHi = CurDAG.getNode(MipsISD::MFHI, DL, MVT::i32, MAdd);
1053 CurDAG.getNode(ISD::BUILD_PAIR, DL, MVT::i64, ResLo, ResHi);
1097 SDLoc DL(N);
1099 SDValue Add1 = DAG.getNode(ISD::ADD, DL, ValTy, N->getOperand(0),
1101 return DAG.getNode(ISD::ADD, DL, ValTy, Add1, Lo);
1118 SDLoc DL(N);
1150 return DAG.getNode(MipsISD::CIns, DL, ValTy, NewOperand,
1151 DAG.getConstant(Pos, DL, MVT::i32),
1152 DAG.getConstant(SMSize, DL, MVT::i32));
1475 DebugLoc DL = MI.getDebugLoc();
1603 BuildMI(*BB, II, DL, TII->get(Mips::COPY), IncrCopy).addReg(Incr);
1604 BuildMI(*BB, II, DL, TII->get(Mips::COPY), PtrCopy).addReg(Ptr);
1607 BuildMI(*BB, II, DL, TII->get(AtomicOp))
1629 const DebugLoc &DL = MI.getDebugLoc();
1632 BuildMI(BB, DL, TII->get(Mips::SEB), DstReg).addReg(SrcReg);
1637 BuildMI(BB, DL, TII->get(Mips::SEH), DstReg).addReg(SrcReg);
1649 BuildMI(BB, DL, TII->get(Mips::SLL), ScrReg).addReg(SrcReg).addImm(ShiftImm);
1650 BuildMI(BB, DL, TII->get(Mips::SRA), DstReg).addReg(ScrReg).addImm(ShiftImm);
1667 DebugLoc DL = MI.getDebugLoc();
1790 BuildMI(BB, DL, TII->get(ABI.GetPtrAddiuOp()), MaskLSB2)
1792 BuildMI(BB, DL, TII->get(ABI.GetPtrAndOp()), AlignedAddr)
1794 BuildMI(BB, DL, TII->get(Mips::ANDi), PtrLSB2)
1797 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(PtrLSB2).addImm(3);
1800 BuildMI(BB, DL, TII->get(Mips::XORi), Off)
1802 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(Off).addImm(3);
1804 BuildMI(BB, DL, TII->get(Mips::ORi), MaskUpper)
1806 BuildMI(BB, DL, TII->get(Mips::SLLV), Mask)
1808 BuildMI(BB, DL, TII->get(Mips::NOR), Mask2).addReg(Mips::ZERO).addReg(Mask);
1809 BuildMI(BB, DL, TII->get(Mips::SLLV), Incr2).addReg(Incr).addReg(ShiftAmt);
1817 BuildMI(BB, DL, TII->get(AtomicOp))
1860 DebugLoc DL = MI.getDebugLoc();
1882 BuildMI(*BB, II, DL, TII->get(Mips::COPY), PtrCopy).addReg(Ptr);
1883 BuildMI(*BB, II, DL, TII->get(Mips::COPY), OldValCopy).addReg(OldVal);
1884 BuildMI(*BB, II, DL, TII->get(Mips::COPY), NewValCopy).addReg(NewVal);
1890 BuildMI(*BB, II, DL, TII->get(AtomicOp))
1915 DebugLoc DL = MI.getDebugLoc();
1977 BuildMI(BB, DL, TII->get(ArePtrs64bit ? Mips::DADDiu : Mips::ADDiu), MaskLSB2)
1979 BuildMI(BB, DL, TII->get(ArePtrs64bit ? Mips::AND64 : Mips::AND), AlignedAddr)
1981 BuildMI(BB, DL, TII->get(Mips::ANDi), PtrLSB2)
1984 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(PtrLSB2).addImm(3);
1987 BuildMI(BB, DL, TII->get(Mips::XORi), Off)
1989 BuildMI(BB, DL, TII->get(Mips::SLL), ShiftAmt).addReg(Off).addImm(3);
1991 BuildMI(BB, DL, TII->get(Mips::ORi), MaskUpper)
1993 BuildMI(BB, DL, TII->get(Mips::SLLV), Mask)
1995 BuildMI(BB, DL, TII->get(Mips::NOR), Mask2).addReg(Mips::ZERO).addReg(Mask);
1996 BuildMI(BB, DL, TII->get(Mips::ANDi), MaskedCmpVal)
1998 BuildMI(BB, DL, TII->get(Mips::SLLV), ShiftedCmpVal)
2000 BuildMI(BB, DL, TII->get(Mips::ANDi), MaskedNewVal)
2002 BuildMI(BB, DL, TII->get(Mips::SLLV), ShiftedNewVal)
2009 BuildMI(BB, DL, TII->get(AtomicOp))
2032 SDLoc DL(Op);
2045 SDValue BrCode = DAG.getConstant(Opc, DL, MVT::i32);
2047 return DAG.getNode(MipsISD::FPBrcond, DL, Op.getValueType(), Chain, BrCode,
2072 SDLoc DL(Op);
2073 SDValue True = DAG.getConstant(1, DL, MVT::i32);
2074 SDValue False = DAG.getConstant(0, DL, MVT::i32);
2076 return createCMovFP(DAG, Cond, True, False, DL);
2149 SDLoc DL(GA);
2160 SDValue TGA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0, Flag);
2161 SDValue Argument = DAG.getNode(MipsISD::Wrapper, DL, PtrVT,
2175 CLI.setDebugLoc(DL)
2185 SDValue TGAHi = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0,
2187 SDValue Hi = DAG.getNode(MipsISD::TlsHi, DL, PtrVT, TGAHi);
2188 SDValue TGALo = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0,
2190 SDValue Lo = DAG.getNode(MipsISD::Lo, DL, PtrVT, TGALo);
2191 SDValue Add = DAG.getNode(ISD::ADD, DL, PtrVT, Hi, Ret);
2192 return DAG.getNode(ISD::ADD, DL, PtrVT, Add, Lo);
2198 SDValue TGA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0,
2200 TGA = DAG.getNode(MipsISD::Wrapper, DL, PtrVT, getGlobalReg(DAG, PtrVT),
2203 DAG.getLoad(PtrVT, DL, DAG.getEntryNode(), TGA, MachinePointerInfo());
2207 SDValue TGAHi = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0,
2209 SDValue TGALo = DAG.getTargetGlobalAddress(GV, DL, PtrVT, 0,
2211 SDValue Hi = DAG.getNode(MipsISD::TlsHi, DL, PtrVT, TGAHi);
2212 SDValue Lo = DAG.getNode(MipsISD::Lo, DL, PtrVT, TGALo);
2213 Offset = DAG.getNode(ISD::ADD, DL, PtrVT, Hi, Lo);
2216 SDValue ThreadPointer = DAG.getNode(MipsISD::ThreadPointer, DL, PtrVT);
2217 return DAG.getNode(ISD::ADD, DL, PtrVT, ThreadPointer, Offset);
2260 SDLoc DL(Op);
2267 return DAG.getStore(Op.getOperand(0), DL, FI, Op.getOperand(1),
2279 SDLoc DL(Node);
2282 SDValue VAListLoad = DAG.getLoad(getPointerTy(DAG.getDataLayout()), DL, Chain,
2295 ISD::ADD, DL, VAList.getValueType(), VAList,
2296 DAG.getConstant(Align.value() - 1, DL, VAList.getValueType()));
2299 ISD::AND, DL, VAList.getValueType(), VAList,
2300 DAG.getConstant(-(int64_t)Align.value(), DL, VAList.getValueType()));
2308 DAG.getNode(ISD::ADD, DL, VAList.getValueType(), VAList,
2310 DL, VAList.getValueType()));
2312 Chain = DAG.getStore(VAListLoad.getValue(1), DL, Tmp3, VAListPtr,
2322 VAList = DAG.getNode(ISD::ADD, DL, VAListPtr.getValueType(), VAList,
2323 DAG.getIntPtrConstant(Adjustment, DL));
2326 return DAG.getLoad(VT, DL, Chain, VAList, MachinePointerInfo());
2333 SDLoc DL(Op);
2334 SDValue Const1 = DAG.getConstant(1, DL, MVT::i32);
2335 SDValue Const31 = DAG.getConstant(31, DL, MVT::i32);
2341 DAG.getNode(ISD::BITCAST, DL, MVT::i32, Op.getOperand(0)) :
2342 DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, Op.getOperand(0),
2345 DAG.getNode(ISD::BITCAST, DL, MVT::i32, Op.getOperand(1)) :
2346 DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, Op.getOperand(1),
2352 SDValue E = DAG.getNode(MipsISD::Ext, DL, MVT::i32, Y, Const31, Const1);
2353 Res = DAG.getNode(MipsISD::Ins, DL, MVT::i32, E, Const31, Const1, X);
2360 SDValue SllX = DAG.getNode(ISD::SHL, DL, MVT::i32, X, Const1);
2361 SDValue SrlX = DAG.getNode(ISD::SRL, DL, MVT::i32, SllX, Const1);
2362 SDValue SrlY = DAG.getNode(ISD::SRL, DL, MVT::i32, Y, Const31);
2363 SDValue SllY = DAG.getNode(ISD::SHL, DL, MVT::i32, SrlY, Const31);
2364 Res = DAG.getNode(ISD::OR, DL, MVT::i32, SrlX, SllY);
2368 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), Res);
2370 SDValue LowX = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32,
2372 DAG.getConstant(0, DL, MVT::i32));
2373 return DAG.getNode(MipsISD::BuildPairF64, DL, MVT::f64, LowX, Res);
2381 SDLoc DL(Op);
2382 SDValue Const1 = DAG.getConstant(1, DL, MVT::i32);
2385 SDValue X = DAG.getNode(ISD::BITCAST, DL, TyX, Op.getOperand(0));
2386 SDValue Y = DAG.getNode(ISD::BITCAST, DL, TyY, Op.getOperand(1));
2391 SDValue E = DAG.getNode(MipsISD::Ext, DL, TyY, Y,
2392 DAG.getConstant(WidthY - 1, DL, MVT::i32), Const1);
2395 E = DAG.getNode(ISD::ZERO_EXTEND, DL, TyX, E);
2397 E = DAG.getNode(ISD::TRUNCATE, DL, TyX, E);
2399 SDValue I = DAG.getNode(MipsISD::Ins, DL, TyX, E,
2400 DAG.getConstant(WidthX - 1, DL, MVT::i32), Const1,
2402 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), I);
2410 SDValue SllX = DAG.getNode(ISD::SHL, DL, TyX, X, Const1);
2411 SDValue SrlX = DAG.getNode(ISD::SRL, DL, TyX, SllX, Const1);
2412 SDValue SrlY = DAG.getNode(ISD::SRL, DL, TyY, Y,
2413 DAG.getConstant(WidthY - 1, DL, MVT::i32));
2416 SrlY = DAG.getNode(ISD::ZERO_EXTEND, DL, TyX, SrlY);
2418 SrlY = DAG.getNode(ISD::TRUNCATE, DL, TyX, SrlY);
2420 SDValue SllY = DAG.getNode(ISD::SHL, DL, TyX, SrlY,
2421 DAG.getConstant(WidthX - 1, DL, MVT::i32));
2422 SDValue Or = DAG.getNode(ISD::OR, DL, TyX, SrlX, SllY);
2423 return DAG.getNode(ISD::BITCAST, DL, Op.getOperand(0).getValueType(), Or);
2436 SDLoc DL(Op);
2437 SDValue Res, Const1 = DAG.getConstant(1, DL, MVT::i32);
2442 ? DAG.getNode(ISD::BITCAST, DL, MVT::i32, Op.getOperand(0))
2443 : DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32,
2448 Res = DAG.getNode(MipsISD::Ins, DL, MVT::i32,
2450 DAG.getConstant(31, DL, MVT::i32), Const1, X);
2454 SDValue SllX = DAG.getNode(ISD::SHL, DL, MVT::i32, X, Const1);
2455 Res = DAG.getNode(ISD::SRL, DL, MVT::i32, SllX, Const1);
2459 return DAG.getNode(ISD::BITCAST, DL, MVT::f32, Res);
2466 DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32, Op.getOperand(0),
2467 DAG.getConstant(0, DL, MVT::i32));
2468 return DAG.getNode(MipsISD::BuildPairF64, DL, MVT::f64, LowX, Res);
2473 SDLoc DL(Op);
2474 SDValue Res, Const1 = DAG.getConstant(1, DL, MVT::i32);
2477 SDValue X = DAG.getNode(ISD::BITCAST, DL, MVT::i64, Op.getOperand(0));
2481 Res = DAG.getNode(MipsISD::Ins, DL, MVT::i64,
2483 DAG.getConstant(63, DL, MVT::i32), Const1, X);
2485 SDValue SllX = DAG.getNode(ISD::SHL, DL, MVT::i64, X, Const1);
2486 Res = DAG.getNode(ISD::SRL, DL, MVT::i64, SllX, Const1);
2489 return DAG.getNode(ISD::BITCAST, DL, MVT::f64, Res);
2511 SDLoc DL(Op);
2513 DAG.getEntryNode(), DL, ABI.IsN64() ? Mips::FP_64 : Mips::FP, VT);
2553 SDLoc DL(Op);
2560 Chain = DAG.getCopyToReg(Chain, DL, OffsetReg, Offset, SDValue());
2561 Chain = DAG.getCopyToReg(Chain, DL, AddrReg, Handler, Chain.getValue(1));
2562 return DAG.getNode(MipsISD::EH_RETURN, DL, MVT::Other, Chain,
2573 SDLoc DL(Op);
2574 return DAG.getNode(MipsISD::Sync, DL, MVT::Other, Op.getOperand(0),
2575 DAG.getConstant(SType, DL, MVT::i32));
2580 SDLoc DL(Op);
2591 SDValue Not = DAG.getNode(ISD::XOR, DL, MVT::i32, Shamt,
2592 DAG.getConstant(-1, DL, MVT::i32));
2593 SDValue ShiftRight1Lo = DAG.getNode(ISD::SRL, DL, VT, Lo,
2594 DAG.getConstant(1, DL, VT));
2595 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, ShiftRight1Lo, Not);
2596 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, Hi, Shamt);
2597 SDValue Or = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo);
2598 SDValue ShiftLeftLo = DAG.getNode(ISD::SHL, DL, VT, Lo, Shamt);
2599 SDValue Cond = DAG.getNode(ISD::AND, DL, MVT::i32, Shamt,
2600 DAG.getConstant(VT.getSizeInBits(), DL, MVT::i32));
2601 Lo = DAG.getNode(ISD::SELECT, DL, VT, Cond,
2602 DAG.getConstant(0, DL, VT), ShiftLeftLo);
2603 Hi = DAG.getNode(ISD::SELECT, DL, VT, Cond, ShiftLeftLo, Or);
2606 return DAG.getMergeValues(Ops, DL);
2611 SDLoc DL(Op);
2629 SDValue Not = DAG.getNode(ISD::XOR, DL, MVT::i32, Shamt,
2630 DAG.getConstant(-1, DL, MVT::i32));
2631 SDValue ShiftLeft1Hi = DAG.getNode(ISD::SHL, DL, VT, Hi,
2632 DAG.getConstant(1, DL, VT));
2633 SDValue ShiftLeftHi = DAG.getNode(ISD::SHL, DL, VT, ShiftLeft1Hi, Not);
2634 SDValue ShiftRightLo = DAG.getNode(ISD::SRL, DL, VT, Lo, Shamt);
2635 SDValue Or = DAG.getNode(ISD::OR, DL, VT, ShiftLeftHi, ShiftRightLo);
2637 DL, VT, Hi, Shamt);
2638 SDValue Cond = DAG.getNode(ISD::AND, DL, MVT::i32, Shamt,
2639 DAG.getConstant(VT.getSizeInBits(), DL, MVT::i32));
2640 SDValue Ext = DAG.getNode(ISD::SRA, DL, VT, Hi,
2641 DAG.getConstant(VT.getSizeInBits() - 1, DL, VT));
2647 DL, VTList, Cond, ShiftRightHi,
2648 IsSRA ? Ext : DAG.getConstant(0, DL, VT), Or,
2652 Lo = DAG.getNode(ISD::SELECT, DL, VT, Cond, ShiftRightHi, Or);
2653 Hi = DAG.getNode(ISD::SELECT, DL, VT, Cond,
2654 IsSRA ? Ext : DAG.getConstant(0, DL, VT), ShiftRightHi);
2657 return DAG.getMergeValues(Ops, DL);
2665 SDLoc DL(LD);
2669 Ptr = DAG.getNode(ISD::ADD, DL, BasePtrVT, Ptr,
2670 DAG.getConstant(Offset, DL, BasePtrVT));
2673 return DAG.getMemIntrinsicNode(Opc, DL, VTList, Ops, MemVT,
2734 SDLoc DL(LD);
2735 SDValue Const32 = DAG.getConstant(32, DL, MVT::i32);
2736 SDValue SLL = DAG.getNode(ISD::SHL, DL, MVT::i64, LWR, Const32);
2737 SDValue SRL = DAG.getNode(ISD::SRL, DL, MVT::i64, SLL, Const32);
2739 return DAG.getMergeValues(Ops, DL);
2746 SDLoc DL(SD);
2750 Ptr = DAG.getNode(ISD::ADD, DL, BasePtrVT, Ptr,
2751 DAG.getConstant(Offset, DL, BasePtrVT));
2754 return DAG.getMemIntrinsicNode(Opc, DL, VTList, Ops, MemVT,
3016 const SDLoc &DL, bool IsTailCall,
3020 DAG.getNode(ISD::ADD, DL, getPointerTy(DAG.getDataLayout()), StackPtr,
3021 DAG.getIntPtrConstant(Offset, DL));
3022 return DAG.getStore(Chain, DL, Arg, PtrOff, MachinePointerInfo());
3028 return DAG.getStore(Chain, DL, Arg, FIN, MachinePointerInfo(),
3061 Chain = CLI.DAG.getCopyToReg(Chain, CLI.DL, RegsToPass[i].first,
3155 SDLoc DL = CLI.DL;
3250 SDValue NextStackOffsetVal = DAG.getIntPtrConstant(NextStackOffset, DL, true);
3253 Chain = DAG.getCALLSEQ_START(Chain, NextStackOffset, 0, DL);
3256 DAG.getCopyFromReg(Chain, DL, ABI.IsN64() ? Mips::SP_64 : Mips::SP,
3283 passByValArg(Chain, DL, RegsToPass, MemOpChains, StackPtr, MFI, DAG, Arg,
3299 Arg = DAG.getNode(ISD::BITCAST, DL, LocVT, Arg);
3301 SDValue Lo = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32,
3302 Arg, DAG.getConstant(0, DL, MVT::i32));
3303 SDValue Hi = DAG.getNode(MipsISD::ExtractElementF64, DL, MVT::i32,
3304 Arg, DAG.getConstant(1, DL, MVT::i32));
3316 Arg = DAG.getNode(ISD::BITCAST, DL, LocVT, Arg);
3322 Arg = DAG.getNode(ISD::SIGN_EXTEND, DL, LocVT, Arg);
3328 Arg = DAG.getNode(ISD::ZERO_EXTEND, DL, LocVT, Arg);
3334 Arg = DAG.getNode(ISD::ANY_EXTEND, DL, LocVT, Arg);
3342 ISD::SHL, DL, VA.getLocVT(), Arg,
3343 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT()));
3370 Chain, Arg, DL, IsTailCall, DAG));
3376 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, MemOpChains);
3420 Callee = getAddrLocal(G, DL, Ty, DAG, ABI.IsN32() || ABI.IsN64());
3422 Callee = getAddrGlobalLargeGOT(G, DL, Ty, DAG, MipsII::MO_CALL_HI16,
3427 Callee = getAddrGlobal(G, DL, Ty, DAG, MipsII::MO_GOT_CALL, Chain,
3432 Callee = DAG.getTargetGlobalAddress(G->getGlobal(), DL,
3444 Callee = getAddrGlobalLargeGOT(S, DL, Ty, DAG, MipsII::MO_CALL_HI16,
3449 Callee = getAddrGlobal(S, DL, Ty, DAG, MipsII::MO_GOT_CALL, Chain,
3465 SDValue Ret = DAG.getNode(MipsISD::TailCall, DL, MVT::Other, Ops);
3470 Chain = DAG.getNode(MipsISD::JmpLink, DL, NodeTys, Ops);
3479 DAG.getIntPtrConstant(0, DL, true), InFlag, DL);
3485 return LowerCallResult(Chain, InFlag, CallConv, IsVarArg, Ins, DL, DAG,
3493 const SmallVectorImpl<ISD::InputArg> &Ins, const SDLoc &DL,
3511 SDValue Val = DAG.getCopyFromReg(Chain, DL, RVLocs[i].getLocReg(),
3522 Shift, DL, VA.getLocVT(), Val,
3523 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT()));
3532 Val = DAG.getNode(ISD::BITCAST, DL, VA.getValVT(), Val);
3536 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val);
3540 Val = DAG.getNode(ISD::AssertZext, DL, VA.getLocVT(), Val,
3542 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val);
3546 Val = DAG.getNode(ISD::AssertSext, DL, VA.getLocVT(), Val,
3548 Val = DAG.getNode(ISD::TRUNCATE, DL, VA.getValVT(), Val);
3559 EVT ArgVT, const SDLoc &DL,
3576 Opcode, DL, VA.getLocVT(), Val,
3577 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT()));
3593 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val);
3597 Val = DAG.getNode(ISD::AssertSext, DL, LocVT, Val, DAG.getValueType(ValVT));
3598 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val);
3602 Val = DAG.getNode(ISD::AssertZext, DL, LocVT, Val, DAG.getValueType(ValVT));
3603 Val = DAG.getNode(ISD::TRUNCATE, DL, ValVT, Val);
3606 Val = DAG.getNode(ISD::BITCAST, DL, ValVT, Val);
3620 const SmallVectorImpl<ISD::InputArg> &Ins, const SDLoc &DL,
3669 copyByValRegs(Chain, DL, OutChains, DAG, Flags, InVals, &*FuncArg,
3684 SDValue ArgValue = DAG.getCopyFromReg(Chain, DL, Reg, RegVT);
3686 ArgValue = UnpackFromArgumentSlot(ArgValue, VA, Ins[i].ArgVT, DL, DAG);
3693 ArgValue = DAG.getNode(ISD::BITCAST, DL, ValVT, ArgValue);
3698 SDValue ArgValue2 = DAG.getCopyFromReg(Chain, DL, Reg2, RegVT);
3701 ArgValue = DAG.getNode(MipsISD::BuildPairF64, DL, MVT::f64,
3728 LocVT, DL, Chain, FIN,
3732 ArgValue = UnpackFromArgumentSlot(ArgValue, VA, Ins[i].ArgVT, DL, DAG);
3749 SDValue Copy = DAG.getCopyToReg(DAG.getEntryNode(), DL, Reg, InVals[i]);
3750 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, Copy, Chain);
3756 writeVarArgRegs(OutChains, Chain, DL, DAG, CCInfo);
3762 Chain = DAG.getNode(ISD::TokenFactor, DL, MVT::Other, OutChains);
3792 const SDLoc &DL,
3799 return DAG.getNode(MipsISD::ERet, DL, MVT::Other, RetOps);
3807 const SDLoc &DL, SelectionDAG &DAG) const {
3835 Val = DAG.getNode(ISD::BITCAST, DL, VA.getLocVT(), Val);
3841 Val = DAG.getNode(ISD::ANY_EXTEND, DL, VA.getLocVT(), Val);
3847 Val = DAG.getNode(ISD::ZERO_EXTEND, DL, VA.getLocVT(), Val);
3853 Val = DAG.getNode(ISD::SIGN_EXTEND, DL, VA.getLocVT(), Val);
3861 ISD::SHL, DL, VA.getLocVT(), Val,
3862 DAG.getConstant(LocSizeInBits - ValSizeInBits, DL, VA.getLocVT()));
3865 Chain = DAG.getCopyToReg(Chain, DL, VA.getLocReg(), Val, Flag);
3883 DAG.getCopyFromReg(Chain, DL, Reg, getPointerTy(DAG.getDataLayout()));
3886 Chain = DAG.getCopyToReg(Chain, DL, V0, Val, Flag);
3899 return LowerInterruptReturn(RetOps, DL, DAG);
3902 return DAG.getNode(MipsISD::Ret, DL, MVT::Other, RetOps);
4180 SDLoc DL(Op);
4195 Result = DAG.getTargetConstant(Val, DL, Type);
4205 Result = DAG.getTargetConstant(0, DL, Type);
4215 Result = DAG.getTargetConstant(Val, DL, Type);
4225 Result = DAG.getTargetConstant(Val, DL, Type);
4235 Result = DAG.getTargetConstant(Val, DL, Type);
4245 Result = DAG.getTargetConstant(Val, DL, Type);
4255 Result = DAG.getTargetConstant(Val, DL, Type);
4270 bool MipsTargetLowering::isLegalAddressingMode(const DataLayout &DL,
4329 SDValue Chain, const SDLoc &DL, std::vector<SDValue> &OutChains,
4372 SDValue StorePtr = DAG.getNode(ISD::ADD, DL, PtrTy, FIN,
4373 DAG.getConstant(Offset, DL, PtrTy));
4374 SDValue Store = DAG.getStore(Chain, DL, DAG.getRegister(VReg, RegTy),
4382 SDValue Chain, const SDLoc &DL,
4404 SDValue LoadPtr = DAG.getNode(ISD::ADD, DL, PtrTy, Arg,
4405 DAG.getConstant(OffsetInBytes, DL, PtrTy));
4406 SDValue LoadVal = DAG.getLoad(RegTy, DL, Chain, LoadPtr,
4429 SDValue LoadPtr = DAG.getNode(ISD::ADD, DL, PtrTy, Arg,
4430 DAG.getConstant(OffsetInBytes, DL,
4433 ISD::ZEXTLOAD, DL, RegTy, Chain, LoadPtr, MachinePointerInfo(),
4445 SDValue Shift = DAG.getNode(ISD::SHL, DL, RegTy, LoadVal,
4446 DAG.getConstant(Shamt, DL, MVT::i32));
4449 Val = DAG.getNode(ISD::OR, DL, RegTy, Val, Shift);
4466 SDValue Src = DAG.getNode(ISD::ADD, DL, PtrTy, Arg,
4467 DAG.getConstant(OffsetInBytes, DL, PtrTy));
4468 SDValue Dst = DAG.getNode(ISD::ADD, DL, PtrTy, StackPtr,
4469 DAG.getIntPtrConstant(VA.getLocMemOffset(), DL));
4471 Chain, DL, Dst, Src, DAG.getConstant(MemCpySize, DL, PtrTy),
4478 SDValue Chain, const SDLoc &DL,
4513 SDValue ArgValue = DAG.getCopyFromReg(Chain, DL, Reg, RegTy);
4517 DAG.getStore(Chain, DL, ArgValue, PtrOff, MachinePointerInfo());
4579 DebugLoc DL = MI.getDebugLoc();
4612 BuildMI(BB, DL, TII->get(Opc))
4617 BuildMI(BB, DL, TII->get(Opc))
4636 BuildMI(*BB, BB->begin(), DL, TII->get(Mips::PHI), MI.getOperand(0).getReg())
4655 DebugLoc DL = MI.getDebugLoc();
4688 BuildMI(BB, DL, TII->get(Mips::BNE))
4707 BuildMI(*BB, BB->begin(), DL, TII->get(Mips::PHI), MI.getOperand(0).getReg())
4712 BuildMI(*BB, BB->begin(), DL, TII->get(Mips::PHI), MI.getOperand(1).getReg())
4752 DebugLoc DL = MI.getDebugLoc();
4763 BuildMI(*BB, I, DL, TII->get(Mips::LW))
4767 BuildMI(*BB, I, DL, TII->get(Mips::FILL_W)).addDef(Dest).addUse(Temp);
4774 BuildMI(*BB, I, DL, TII->get(Mips::IMPLICIT_DEF)).addDef(Undef);
4775 BuildMI(*BB, I, DL, TII->get(Mips::LWR))
4780 BuildMI(*BB, I, DL, TII->get(Mips::LWL))
4785 BuildMI(*BB, I, DL, TII->get(Mips::FILL_W)).addDef(Dest).addUse(LoadFull);
4798 DebugLoc DL = MI.getDebugLoc();
4810 BuildMI(*BB, I, DL, TII->get(Mips::LD))
4814 BuildMI(*BB, I, DL, TII->get(Mips::FILL_D)).addDef(Dest).addUse(Temp);
4819 BuildMI(*BB, I, DL, TII->get(Mips::LW))
4823 BuildMI(*BB, I, DL, TII->get(Mips::LW))
4827 BuildMI(*BB, I, DL, TII->get(Mips::FILL_W)).addDef(Wtemp).addUse(Lo);
4828 BuildMI(*BB, I, DL, TII->get(Mips::INSERT_W), Dest)
4843 BuildMI(*BB, I, DL, TII->get(Mips::IMPLICIT_DEF)).addDef(LoUndef);
4844 BuildMI(*BB, I, DL, TII->get(Mips::LWR))
4849 BuildMI(*BB, I, DL, TII->get(Mips::LWL))
4854 BuildMI(*BB, I, DL, TII->get(Mips::IMPLICIT_DEF)).addDef(HiUndef);
4855 BuildMI(*BB, I, DL, TII->get(Mips::LWR))
4860 BuildMI(*BB, I, DL, TII->get(Mips::LWL))
4865 BuildMI(*BB, I, DL, TII->get(Mips::FILL_W)).addDef(Wtemp).addUse(LoFull);
4866 BuildMI(*BB, I, DL, TII->get(Mips::INSERT_W), Dest)
4882 DebugLoc DL = MI.getDebugLoc();
4894 BuildMI(*BB, I, DL, TII->get(Mips::COPY)).addDef(BitcastW).addUse(StoreVal);
4895 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4899 BuildMI(*BB, I, DL, TII->get(Mips::SW))
4907 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4911 BuildMI(*BB, I, DL, TII->get(Mips::SWR))
4915 BuildMI(*BB, I, DL, TII->get(Mips::SWL))
4932 DebugLoc DL = MI.getDebugLoc();
4945 BuildMI(*BB, I, DL, TII->get(Mips::COPY))
4948 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_D))
4952 BuildMI(*BB, I, DL, TII->get(Mips::SD))
4960 BuildMI(*BB, I, DL, TII->get(Mips::COPY))
4963 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4967 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4971 BuildMI(*BB, I, DL, TII->get(Mips::SW))
4975 BuildMI(*BB, I, DL, TII->get(Mips::SW))
4986 BuildMI(*BB, I, DL, TII->get(Mips::COPY)).addDef(Bitcast).addUse(StoreVal);
4987 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4991 BuildMI(*BB, I, DL, TII->get(Mips::COPY_S_W))
4995 BuildMI(*BB, I, DL, TII->get(Mips::SWR))
4999 BuildMI(*BB, I, DL, TII->get(Mips::SWL))
5003 BuildMI(*BB, I, DL, TII->get(Mips::SWR))
5007 BuildMI(*BB, I, DL, TII->get(Mips::SWL))