| /freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
| H A D | HexagonFrameLowering.cpp | 287 const HexagonRegisterInfo &HRI) { in needsStackFrame() argument 317 for (MCPhysReg S : HRI.subregs_inclusive(R)) in needsStackFrame() 413 auto &HRI = *MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in findShrunkPrologEpilog() local 444 for (const MCPhysReg *P = HRI.getCalleeSavedRegs(&MF); *P; ++P) in findShrunkPrologEpilog() 445 for (MCPhysReg S : HRI.subregs_inclusive(*P)) in findShrunkPrologEpilog() 449 if (needsStackFrame(I, CSR, HRI)) in findShrunkPrologEpilog() 513 auto &HRI = *MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in emitPrologue() local 523 insertCSRSpillsInBlock(*PrologB, CSI, HRI, PrologueStubs); in emitPrologue() 528 insertCSRRestoresInBlock(*EpilogB, CSI, HRI); in emitPrologue() 533 insertCSRRestoresInBlock(B, CSI, HRI); in emitPrologue() [all …]
|
| H A D | HexagonVLIWPacketizer.cpp | 117 const HexagonRegisterInfo *HRI = nullptr; member in __anon73fb695d0111::HexagonPacketizer 140 HRI = MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in INITIALIZE_PASS_DEPENDENCY() 213 HRI = HST.getRegisterInfo(); in runOnMachineFunction() 306 if (DepReg == HRI->getRARegister()) in isCallDependent() 310 if (DepReg == HRI->getFrameRegister() || DepReg == HRI->getStackRegister()) in isCallDependent() 491 if (HII->isValidOffset(Opc, NewOff, HRI)) { in useCallersSP() 542 if (!HII->isValidOffset(MI.getOpcode(), Offset+Incr, HRI)) in updateOffset() 665 const TargetRegisterClass *PacketRC = HII->getRegClass(MCID, 0, HRI, MF); in canPromoteToNewValueStore() 715 predRegClass = HRI->getMinimalPhysRegClass(predRegNumSrc); in canPromoteToNewValueStore() 727 predRegClass = HRI->getMinimalPhysRegClass(predRegNumDst); in canPromoteToNewValueStore() [all …]
|
| H A D | HexagonInstrInfo.cpp | 137 static bool isDblRegForSubInst(Register Reg, const HexagonRegisterInfo &HRI) { in isDblRegForSubInst() argument 138 return isIntRegForSubInst(HRI.getSubReg(Reg, Hexagon::isub_lo)) && in isDblRegForSubInst() 139 isIntRegForSubInst(HRI.getSubReg(Reg, Hexagon::isub_hi)); in isDblRegForSubInst() 861 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in copyPhysReg() local 922 LivePhysRegs LiveAtMI(HRI); in copyPhysReg() 924 Register SrcLo = HRI.getSubReg(SrcReg, Hexagon::vsub_lo); in copyPhysReg() 925 Register SrcHi = HRI.getSubReg(SrcReg, Hexagon::vsub_hi); in copyPhysReg() 953 << printReg(DestReg, &HRI) << " = " << printReg(SrcReg, &HRI) << '\n'; in copyPhysReg() 1056 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in expandPostRAPseudo() local 1057 LivePhysRegs LiveIn(HRI), LiveOut(HRI); in expandPostRAPseudo() [all …]
|
| H A D | HexagonVExtract.cpp | 104 const auto &HRI = *HST->getRegisterInfo(); in runOnMachineFunction() local 140 Align Alignment = HRI.getSpillAlign(VecRC); in runOnMachineFunction() 146 int FI = MFI.CreateStackObject(HRI.getSpillSize(VecRC), Alignment, in runOnMachineFunction() 161 unsigned VecSize = HRI.getRegSizeInBits(VecRC) / 8; in runOnMachineFunction()
|
| H A D | HexagonBitSimplify.cpp | 468 auto &HRI = static_cast<const HexagonRegisterInfo&>( in parseRegSequence() local 470 unsigned SubLo = HRI.getHexagonSubRegIndex(DstRC, Hexagon::ps_sub_lo); in parseRegSequence() 471 unsigned SubHi = HRI.getHexagonSubRegIndex(DstRC, Hexagon::ps_sub_hi); in parseRegSequence() 932 auto &HRI = static_cast<const HexagonRegisterInfo&>( in getFinalVRegClass() local 935 auto VerifySR = [&HRI] (const TargetRegisterClass *RC, unsigned Sub) -> void { in getFinalVRegClass() 936 (void)HRI; in getFinalVRegClass() 937 assert(Sub == HRI.getHexagonSubRegIndex(*RC, Hexagon::ps_sub_lo) || in getFinalVRegClass() 938 Sub == HRI.getHexagonSubRegIndex(*RC, Hexagon::ps_sub_hi)); in getFinalVRegClass() 1083 : Transformation(true), HII(hii), HRI(hri), MRI(mri), BT(bt) {} in RedundantInstrElimination() 1098 const HexagonRegisterInfo &HRI; member in __anonbc27dab50511::RedundantInstrElimination [all …]
|
| H A D | HexagonGenMux.cpp | 89 const HexagonRegisterInfo *HRI = nullptr; member in __anoncf1483fd0111::HexagonGenMux 147 for (MCPhysReg I : HRI->subregs(Reg)) in getSubRegs() 181 unsigned NR = HRI->getNumRegs(); in buildMaps() 349 LiveRegUnits LPR(*HRI); in genMuxInBlock() 375 HRI = MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in runOnMachineFunction()
|
| H A D | HexagonISelDAGToDAG.h | 31 const HexagonRegisterInfo *HRI; variable 39 HRI(nullptr) {} in HexagonDAGToDAGISel() 45 HRI = HST->getRegisterInfo(); in runOnMachineFunction()
|
| H A D | HexagonConstExtenders.cpp | 384 const HexagonRegisterInfo *HRI = nullptr; member 446 : Rs(R), HRI(I) {} in PrintRegister() 448 const HexagonRegisterInfo &HRI; member 454 OS << printReg(P.Rs.Reg, &P.HRI, P.Rs.Sub); in operator <<() 462 : Ex(E), HRI(I) {} in PrintExpr() 464 const HexagonRegisterInfo &HRI; member 471 OS << printReg(P.Ex.Rs.Reg, &P.HRI, P.Ex.Rs.Sub); in operator <<() 480 : ExtI(EI), HRI(I) {} in PrintInit() 482 const HexagonRegisterInfo &HRI; member 488 << PrintExpr(P.ExtI.second, P.HRI) << ']'; in operator <<() [all …]
|
| H A D | HexagonGenInsert.cpp | 568 const HexagonRegisterInfo *HRI = nullptr; member in __anon7f002ed80511::HexagonGenInsert 586 dbgs() << " " << printReg(I.first, HRI) << ":\n"; in dump_map() 589 dbgs() << " " << PrintIFR(J.first, HRI) << ", " in dump_map() 590 << PrintRegSet(J.second, HRI) << '\n'; in dump_map() 787 dbgs() << __func__ << ": " << printReg(VR, HRI) in findRecordInsertForms() 788 << " AVs: " << PrintORL(AVs, HRI) << "\n"; in findRecordInsertForms() 852 dbgs() << "Prefixes matching register " << printReg(VR, HRI) << "\n"; in findRecordInsertForms() 857 dbgs() << " (" << printReg(J.first, HRI) << ",@" << J.second << ')'; in findRecordInsertForms() 902 dbgs() << printReg(VR, HRI) << " = insert(" << printReg(SrcR, HRI) in findRecordInsertForms() 903 << ',' << printReg(InsR, HRI) << ",#" << L << ",#" in findRecordInsertForms() [all …]
|
| H A D | HexagonBranchRelaxation.cpp | 70 const HexagonRegisterInfo *HRI; member 97 HRI = HST.getRegisterInfo(); in runOnMachineFunction()
|
| H A D | HexagonFrameLowering.h | 127 const HexagonRegisterInfo &HRI, bool &PrologueStubs) const; 129 const HexagonRegisterInfo &HRI) const;
|
| H A D | HexagonOptAddrMode.cpp | 86 const HexagonRegisterInfo *HRI = nullptr; member in __anon8a08179c0111::HexagonOptAddrMode 345 return HII->isValidOffset(MI->getOpcode(), Offset, HRI, false); in isValidOffset() 374 return HII->isValidOffset(MI->getOpcode(), Offset, HRI, false); in isValidOffset() 873 HRI = HST.getRegisterInfo(); in runOnMachineFunction() 877 DataFlowGraph G(MF, *HII, *HRI, *MDT, MDF); in runOnMachineFunction()
|
| H A D | HexagonRDFOpt.cpp | 308 const auto &HRI = *MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in runOnMachineFunction() local 315 DataFlowGraph G(MF, HII, HRI, *MDT, MDF); in runOnMachineFunction()
|
| H A D | HexagonVLIWPacketizer.h | 77 const HexagonRegisterInfo *HRI; variable
|
| H A D | HexagonBitTracker.cpp | 95 const auto &HRI = static_cast<const HexagonRegisterInfo&>(TRI); in mask() local 96 bool IsSubLo = (Sub == HRI.getHexagonSubRegIndex(RC, Hexagon::ps_sub_lo)); in mask() 136 const auto &HRI = static_cast<const HexagonRegisterInfo&>(TRI); in composeWithSubRegIndex() local 137 bool IsSubLo = (Idx == HRI.getHexagonSubRegIndex(RC, Hexagon::ps_sub_lo)); in composeWithSubRegIndex() 138 bool IsSubHi = (Idx == HRI.getHexagonSubRegIndex(RC, Hexagon::ps_sub_hi)); in composeWithSubRegIndex()
|
| H A D | HexagonISelLowering.cpp | 460 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in LowerCall() local 462 DAG.getCopyFromReg(Chain, dl, HRI.getStackRegister(), PtrVT); in LowerCall() 526 Align VecAlign = HRI.getSpillAlign(Hexagon::HvxVRRegClass); in LowerCall() 593 const uint32_t *Mask = HRI.getCallPreservedMask(MF, CallConv); in LowerCall() 667 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in LowerINLINEASM() local 668 unsigned LR = HRI.getRARegister(); in LowerINLINEASM() 1187 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in LowerRETURNADDR() local 1207 Register Reg = MF.addLiveIn(HRI.getRARegister(), getRegClassFor(MVT::i32)); in LowerRETURNADDR() 1213 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo(); in LowerFRAMEADDR() local 1221 HRI in LowerFRAMEADDR() 1313 const auto &HRI = *Subtarget.getRegisterInfo(); GetDynamicTLSAddr() local 1455 auto &HRI = *Subtarget.getRegisterInfo(); HexagonTargetLowering() local [all...] |
| H A D | HexagonAsmPrinter.cpp | 271 auto &HRI = *MF.getSubtarget<HexagonSubtarget>().getRegisterInfo(); in HexagonProcessInstruction() local 272 unsigned VectorSize = HRI.getRegSizeInBits(Hexagon::HvxVRRegClass) / 8; in HexagonProcessInstruction()
|
| H A D | HexagonConstPropagation.cpp | 1887 const HexagonRegisterInfo &HRI; member in __anonfe19b4d40611::HexagonConstEvaluator 1920 HRI(*Fn.getSubtarget<HexagonSubtarget>().getRegisterInfo()) { in HexagonConstEvaluator() 1953 unsigned SubLo = HRI.getHexagonSubRegIndex(DefRC, Hexagon::ps_sub_lo); in evaluate() 1954 unsigned SubHi = HRI.getHexagonSubRegIndex(DefRC, Hexagon::ps_sub_hi); in evaluate() 2809 dbgs() << "Top " << printReg(R.Reg, &HRI, R.SubReg) in rewriteHexConstDefs()
|
| H A D | HexagonISelDAGToDAG.cpp | 1428 auto &HRI = *HST.getRegisterInfo(); in emitFunctionEntryCode() local 1429 BitVector Reserved = HRI.getReservedRegs(*MF); in emitFunctionEntryCode() 1430 for (const MCPhysReg *R = HRI.getCalleeSavedRegs(MF); *R; ++R) { in emitFunctionEntryCode()
|
| H A D | HexagonPatternsHVX.td | 96 int32_t VecSize = HRI->getSpillSize(Hexagon::HvxVRRegClass);
|