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()
1036 auto &HII = *HST.getInstrInfo(); in insertCFIInstructionsAt() local
1043 const MCInstrDesc &CFID = HII.get(TargetOpcode::CFI_INSTRUCTION); in insertCFIInstructionsAt()
1370 auto &HII = *HST.getInstrInfo(); in insertCSRSpillsInBlock() local
1402 BuildMI(MBB, MI, DL, HII.get(SpillOpc)) in insertCSRSpillsInBlock()
1421 HII.storeRegToStackSlot(MBB, MI, Reg, IsKill, FI, RC, &HRI, Register()); in insertCSRSpillsInBlock()
1436 auto &HII = *HST.getInstrInfo(); in insertCSRRestoresInBlock() local
1460 DeallocCall = BuildMI(MBB, MI, DL, HII.get(RetOpc)) in insertCSRRestoresInBlock()
1473 DeallocCall = BuildMI(MBB, It, DL, HII.get(RetOpc)) in insertCSRRestoresInBlock()
1486 HII.loadRegFromStackSlot(MBB, MI, Reg, FI, RC, &HRI, Register()); in insertCSRRestoresInBlock()
1720 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandCopy() argument
1730 BuildMI(B, It, DL, HII.get(TargetOpcode::COPY), TmpR).add(MI->getOperand(1)); in expandCopy()
1731 BuildMI(B, It, DL, HII.get(TargetOpcode::COPY), DstR) in expandCopy()
1741 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreInt() argument
1757 BuildMI(B, It, DL, HII.get(TfrOpc), TmpR) in expandStoreInt()
1761 BuildMI(B, It, DL, HII.get(Hexagon::S2_storeri_io)) in expandStoreInt()
1774 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadInt() argument
1786 BuildMI(B, It, DL, HII.get(Hexagon::L2_loadri_io), TmpR) in expandLoadInt()
1795 BuildMI(B, It, DL, HII.get(TfrOpc), DstR) in expandLoadInt()
1805 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVecPred() argument
1823 BuildMI(B, It, DL, HII.get(Hexagon::A2_tfrsi), TmpR0) in expandStoreVecPred()
1826 BuildMI(B, It, DL, HII.get(Hexagon::V6_vandqrt), TmpR1) in expandStoreVecPred()
1831 HII.storeRegToStackSlot(B, It, TmpR1, true, FI, RC, HRI, Register()); in expandStoreVecPred()
1832 expandStoreVec(B, std::prev(It), MRI, HII, NewRegs); in expandStoreVecPred()
1842 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVecPred() argument
1858 BuildMI(B, It, DL, HII.get(Hexagon::A2_tfrsi), TmpR0) in expandLoadVecPred()
1862 HII.loadRegFromStackSlot(B, It, TmpR1, FI, RC, HRI, Register()); in expandLoadVecPred()
1863 expandLoadVec(B, std::prev(It), MRI, HII, NewRegs); in expandLoadVecPred()
1865 BuildMI(B, It, DL, HII.get(Hexagon::V6_vandvrt), DstR) in expandLoadVecPred()
1877 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVec2() argument
1913 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec2()
1924 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec2()
1937 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVec2() argument
1959 BuildMI(B, It, DL, HII.get(LoadOpc), DstLo) in expandLoadVec2()
1967 BuildMI(B, It, DL, HII.get(LoadOpc), DstHi) in expandLoadVec2()
1978 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandStoreVec() argument
1995 BuildMI(B, It, DL, HII.get(StoreOpc)) in expandStoreVec()
2007 const HexagonInstrInfo &HII, SmallVectorImpl<Register> &NewRegs) const { in expandLoadVec() argument
2023 BuildMI(B, It, DL, HII.get(LoadOpc), DstR) in expandLoadVec()
2034 auto &HII = *MF.getSubtarget<HexagonSubtarget>().getInstrInfo(); in expandSpillMacros() local
2048 Changed |= expandCopy(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2052 Changed |= expandStoreInt(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2056 Changed |= expandLoadInt(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2059 Changed |= expandStoreVecPred(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2062 Changed |= expandLoadVecPred(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2065 Changed |= expandLoadVec2(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2068 Changed |= expandStoreVec2(B, I, MRI, HII, NewRegs); in expandSpillMacros()
2168 auto &HII = *HST.getInstrInfo(); in optimizeSpillSlots() local
2222 bool Load = HII.isLoadFromStackSlot(In, LFI) && !HII.isPredicated(In); in optimizeSpillSlots()
2223 bool Store = HII.isStoreToStackSlot(In, SFI) && !HII.isPredicated(In); in optimizeSpillSlots()
2238 unsigned AM = HII.getAddrMode(In); in optimizeSpillSlots()
2244 auto *RC = HII.getRegClass(In.getDesc(), OpNum, &HRI, MF); in optimizeSpillSlots()
2253 unsigned S = HII.getMemAccessSize(In); in optimizeSpillSlots()
2412 auto *RC = HII.getRegClass(SI.getDesc(), 2, &HRI, MF); in optimizeSpillSlots()
2432 CopyIn = BuildMI(B, StartIt, DL, HII.get(TargetOpcode::COPY), FoundR) in optimizeSpillSlots()
2457 if (!HII.isLoadFromStackSlot(MI, TFI) || TFI != FI) in optimizeSpillSlots()
2464 unsigned MemSize = HII.getMemAccessSize(MI); in optimizeSpillSlots()
2465 assert(HII.getAddrMode(MI) == HexagonII::BaseImmOffset); in optimizeSpillSlots()
2467 if (HII.isSignExtendingLoad(MI)) in optimizeSpillSlots()
2469 else if (HII.isZeroExtendingLoad(MI)) in optimizeSpillSlots()
2471 CopyOut = BuildMI(B, It, DL, HII.get(CopyOpc), DstR) in optimizeSpillSlots()
2488 const HexagonInstrInfo &HII, Register SP, unsigned CF) const { in expandAlloca() argument
2513 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_sub), Rd) in expandAlloca()
2518 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_sub), SP) in expandAlloca()
2524 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_andir), Rd) in expandAlloca()
2528 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_andir), SP) in expandAlloca()
2534 BuildMI(MB, AI, DL, HII.get(TargetOpcode::COPY), SP) in expandAlloca()
2539 BuildMI(MB, AI, DL, HII.get(Hexagon::A2_addi), Rd) in expandAlloca()