Lines Matching defs:HRI
137 static bool isDblRegForSubInst(Register Reg, const HexagonRegisterInfo &HRI) {
138 return isIntRegForSubInst(HRI.getSubReg(Reg, Hexagon::isub_lo)) &&
139 isIntRegForSubInst(HRI.getSubReg(Reg, Hexagon::isub_hi));
861 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
922 LivePhysRegs LiveAtMI(HRI);
924 Register SrcLo = HRI.getSubReg(SrcReg, Hexagon::vsub_lo);
925 Register SrcHi = HRI.getSubReg(SrcReg, Hexagon::vsub_hi);
953 << printReg(DestReg, &HRI) << " = " << printReg(SrcReg, &HRI) << '\n';
1056 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
1057 LivePhysRegs LiveIn(HRI), LiveOut(HRI);
1134 .addReg(HRI.getFrameRegister())
1141 Register SrcLo = HRI.getSubReg(SrcReg, Hexagon::vsub_lo);
1142 Register SrcHi = HRI.getSubReg(SrcReg, Hexagon::vsub_hi);
1156 Register SrcSubLo = HRI.getSubReg(SrcReg, Hexagon::vsub_lo);
1165 Register SrcSubHi = HRI.getSubReg(SrcReg, Hexagon::vsub_hi);
1176 Align NeedAlign = HRI.getSpillAlign(Hexagon::HvxVRRegClass);
1191 unsigned VecOffset = HRI.getSpillSize(Hexagon::HvxVRRegClass);
1192 Align NeedAlign = HRI.getSpillAlign(Hexagon::HvxVRRegClass);
1196 HRI.getSubReg(DstReg, Hexagon::vsub_lo))
1201 HRI.getSubReg(DstReg, Hexagon::vsub_hi))
1214 Align NeedAlign = HRI.getSpillAlign(Hexagon::HvxVRRegClass);
1230 unsigned VecOffset = HRI.getSpillSize(Hexagon::HvxVRRegClass);
1231 Align NeedAlign = HRI.getSpillAlign(Hexagon::HvxVRRegClass);
1237 .addReg(HRI.getSubReg(SrcReg, Hexagon::vsub_lo))
1242 .addReg(HRI.getSubReg(SrcReg, Hexagon::vsub_hi))
1290 Register Src1SubHi = HRI.getSubReg(Src1Reg, Hexagon::isub_hi);
1291 Register Src1SubLo = HRI.getSubReg(Src1Reg, Hexagon::isub_lo);
1292 Register Src2SubHi = HRI.getSubReg(Src2Reg, Hexagon::isub_hi);
1293 Register Src2SubLo = HRI.getSubReg(Src2Reg, Hexagon::isub_lo);
1295 HRI.getSubReg(DstReg, Hexagon::isub_hi))
1299 HRI.getSubReg(DstReg, Hexagon::isub_lo))
1315 Register Src1SubHi = HRI.getSubReg(Src1Reg, Hexagon::isub_hi);
1316 Register Src1SubLo = HRI.getSubReg(Src1Reg, Hexagon::isub_lo);
1317 Register Src2SubHi = HRI.getSubReg(Src2Reg, Hexagon::isub_hi);
1318 Register Src2SubLo = HRI.getSubReg(Src2Reg, Hexagon::isub_lo);
1319 Register Src3SubHi = HRI.getSubReg(Src3Reg, Hexagon::isub_hi);
1320 Register Src3SubLo = HRI.getSubReg(Src3Reg, Hexagon::isub_lo);
1322 HRI.getSubReg(DstReg, Hexagon::isub_hi))
1327 HRI.getSubReg(DstReg, Hexagon::isub_lo))
1411 Register SrcLo = HRI.getSubReg(Op2.getReg(), Hexagon::vsub_lo);
1412 Register SrcHi = HRI.getSubReg(Op2.getReg(), Hexagon::vsub_hi);
1423 Register SrcLo = HRI.getSubReg(Op3.getReg(), Hexagon::vsub_lo);
1424 Register SrcHi = HRI.getSubReg(Op3.getReg(), Hexagon::vsub_hi);
1733 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
1739 const TargetRegisterClass* RC = HRI.getMinimalPhysRegClass(MO.getReg());
1747 if (!MI.modifiesRegister(PR, &HRI))
2214 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
2230 if (RegA.isPhysical() && llvm::is_contained(HRI.subregs(RegA), RegB))
2233 if (RegB.isPhysical() && llvm::is_contained(HRI.subregs(RegB), RegA))
3926 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
3944 HRI.getStackRegister() == SrcReg &&
4001 if (isDblRegForSubInst(DstReg, HRI) &&
4003 HRI.getStackRegister() == SrcReg &&
4067 HRI.getStackRegister() == Src1Reg && MI.getOperand(1).isImm() &&
4109 if (isDblRegForSubInst(Src2Reg, HRI) &&
4111 HRI.getStackRegister() == Src1Reg && MI.getOperand(1).isImm() &&
4164 HRI.getStackRegister() == SrcReg && MI.getOperand(2).isImm() &&
4254 if (isDblRegForSubInst(DstReg, HRI) &&
4269 if (isDblRegForSubInst(DstReg, HRI) && isIntRegForSubInst(SrcReg) &&
4279 if (isDblRegForSubInst(DstReg, HRI) && isIntRegForSubInst(SrcReg) &&
4330 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
4337 for (MCPhysReg SR : HRI.superregs(DefMO.getReg())) {
4338 int Idx = DefMI.findRegisterDefOperandIdx(SR, &HRI, false, false);
4348 for (MCPhysReg SR : HRI.superregs(UseMO.getReg())) {
4349 int Idx = UseMI.findRegisterUseOperandIdx(SR, &HRI, false);
4501 const HexagonRegisterInfo &HRI = *Subtarget.getRegisterInfo();
4504 return HRI.getSpillSize(Hexagon::HvxVRRegClass);