Lines Matching refs:HII

596   auto &HII = *HST.getInstrInfo();  in insertPrologueInBlock()  local
627 expandAlloca(MI, HII, SP, MaxCF); in insertPrologueInBlock()
643 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_addi), SP) in insertPrologueInBlock()
709 BuildMI(MBB, InsertPt, dl, HII.get(LDOpc), RegUsed) in insertPrologueInBlock()
716 BuildMI(MBB, InsertPt, dl, HII.get(STOpc)) in insertPrologueInBlock()
736 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::S2_storeri_io)) in insertPrologueInBlock()
748 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_andir), SP) in insertPrologueInBlock()
756 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::PS_call_stk)) in insertPrologueInBlock()
760 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_addi), SP) in insertPrologueInBlock()
769 auto &HII = *HST.getInstrInfo(); in insertEpilogueInBlock() local
788 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_addi), SP) in insertEpilogueInBlock()
800 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::L2_deallocframe)) in insertEpilogueInBlock()
803 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_add), SP) in insertEpilogueInBlock()
850 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::L2_deallocframe)) in insertEpilogueInBlock()
856 MachineInstr *NewI = BuildMI(MBB, RetI, dl, HII.get(NewOpc)) in insertEpilogueInBlock()
877 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::L2_deallocframe)) in insertEpilogueInBlock()
881 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_addi), SP) in insertEpilogueInBlock()
891 auto &HII = *HST.getInstrInfo(); in insertAllocframe() local
908 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::S2_allocframe)) in insertAllocframe()
916 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::A2_addi), SP) in insertAllocframe()
920 BuildMI(MBB, InsertPt, dl, HII.get(Hexagon::S2_allocframe)) in insertAllocframe()
1037 auto &HII = *HST.getInstrInfo(); in insertCFIInstructionsAt() local
1044 const MCInstrDesc &CFID = HII.get(TargetOpcode::CFI_INSTRUCTION); in insertCFIInstructionsAt()
1371 auto &HII = *HST.getInstrInfo(); in insertCSRSpillsInBlock() local
1403 BuildMI(MBB, MI, DL, HII.get(SpillOpc)) in insertCSRSpillsInBlock()
1422 HII.storeRegToStackSlot(MBB, MI, Reg, IsKill, FI, RC, &HRI, Register()); in insertCSRSpillsInBlock()
1437 auto &HII = *HST.getInstrInfo(); in insertCSRRestoresInBlock() local
1461 DeallocCall = BuildMI(MBB, MI, DL, HII.get(RetOpc)) in insertCSRRestoresInBlock()
1474 DeallocCall = BuildMI(MBB, It, DL, HII.get(RetOpc)) in insertCSRRestoresInBlock()
1487 HII.loadRegFromStackSlot(MBB, MI, Reg, FI, RC, &HRI, Register()); in insertCSRRestoresInBlock()
1721 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandCopy() argument
1731 BuildMI(B, It, DL, HII.get(TargetOpcode::COPY), TmpR).add(MI->getOperand(1)); in expandCopy()
1732 BuildMI(B, It, DL, HII.get(TargetOpcode::COPY), DstR) in expandCopy()
1742 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreInt() argument
1758 BuildMI(B, It, DL, HII.get(TfrOpc), TmpR) in expandStoreInt()
1762 BuildMI(B, It, DL, HII.get(Hexagon::S2_storeri_io)) in expandStoreInt()
1775 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadInt() argument
1787 BuildMI(B, It, DL, HII.get(Hexagon::L2_loadri_io), TmpR) in expandLoadInt()
1796 BuildMI(B, It, DL, HII.get(TfrOpc), DstR) in expandLoadInt()
1806 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVecPred() argument
1824 BuildMI(B, It, DL, HII.get(Hexagon::A2_tfrsi), TmpR0) in expandStoreVecPred()
1827 BuildMI(B, It, DL, HII.get(Hexagon::V6_vandqrt), TmpR1) in expandStoreVecPred()
1832 HII.storeRegToStackSlot(B, It, TmpR1, true, FI, RC, HRI, Register()); in expandStoreVecPred()
1833 expandStoreVec(B, std::prev(It), MRI, HII, NewRegs); in expandStoreVecPred()
1843 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVecPred() argument
1859 BuildMI(B, It, DL, HII.get(Hexagon::A2_tfrsi), TmpR0) in expandLoadVecPred()
1863 HII.loadRegFromStackSlot(B, It, TmpR1, FI, RC, HRI, Register()); in expandLoadVecPred()
1864 expandLoadVec(B, std::prev(It), MRI, HII, NewRegs); in expandLoadVecPred()
1866 BuildMI(B, It, DL, HII.get(Hexagon::V6_vandvrt), DstR) in expandLoadVecPred()
1878 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVec2() argument
1914 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec2()
1925 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec2()
1938 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVec2() argument
1960 BuildMI(B, It, DL, HII.get(LoadOpc), DstLo) in expandLoadVec2()
1968 BuildMI(B, It, DL, HII.get(LoadOpc), DstHi) in expandLoadVec2()
1979 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVec() argument
1996 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec()
2008 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVec() argument
2024 BuildMI(B, It, DL, HII.get(LoadOpc), DstR) in expandLoadVec()
2035 auto &HII = *MF.getSubtarget<HexagonSubtarget>().getInstrInfo(); in expandSpillMacros() local
2049 Changed |= expandCopy(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2053 Changed |= expandStoreInt(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2057 Changed |= expandLoadInt(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2060 Changed |= expandStoreVecPred(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2063 Changed |= expandLoadVecPred(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2066 Changed |= expandLoadVec2(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2069 Changed |= expandStoreVec2(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2169 auto &HII = *HST.getInstrInfo(); in optimizeSpillSlots() local
2223 bool Load = HII.isLoadFromStackSlot(In, LFI) && !HII.isPredicated(In); in optimizeSpillSlots()
2224 bool Store = HII.isStoreToStackSlot(In, SFI) && !HII.isPredicated(In); in optimizeSpillSlots()
2239 unsigned AM = HII.getAddrMode(In); in optimizeSpillSlots()
2245 auto *RC = HII.getRegClass(In.getDesc(), OpNum, &HRI, MF); in optimizeSpillSlots()
2254 unsigned S = HII.getMemAccessSize(In); in optimizeSpillSlots()
2413 auto *RC = HII.getRegClass(SI.getDesc(), 2, &HRI, MF); in optimizeSpillSlots()
2433 CopyIn = BuildMI(B, StartIt, DL, HII.get(TargetOpcode::COPY), FoundR) in optimizeSpillSlots()
2458 if (!HII.isLoadFromStackSlot(MI, TFI) || TFI != FI) in optimizeSpillSlots()
2465 unsigned MemSize = HII.getMemAccessSize(MI); in optimizeSpillSlots()
2466 assert(HII.getAddrMode(MI) == HexagonII::BaseImmOffset); in optimizeSpillSlots()
2468 if (HII.isSignExtendingLoad(MI)) in optimizeSpillSlots()
2470 else if (HII.isZeroExtendingLoad(MI)) in optimizeSpillSlots()
2472 CopyOut = BuildMI(B, It, DL, HII.get(CopyOpc), DstR) in optimizeSpillSlots()
2489 const HexagonInstrInfo &HII, Register SP, unsigned CF) const { in expandAlloca() argument
2514 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_sub), Rd) in expandAlloca()
2519 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_sub), SP) in expandAlloca()
2525 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_andir), Rd) in expandAlloca()
2529 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_andir), SP) in expandAlloca()
2535 BuildMI(MB, AI, DL, HII.get(TargetOpcode::COPY), SP) in expandAlloca()
2540 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_addi), Rd) in expandAlloca()