Lines Matching refs:NewR
237 static bool replaceReg(Register OldR, Register NewR,
241 static bool replaceRegWithSub(Register OldR, Register NewR, unsigned NewSR,
243 static bool replaceSubWithSub(Register OldR, unsigned OldSR, Register NewR,
383 bool HexagonBitSimplify::replaceReg(Register OldR, Register NewR, in replaceReg() argument
385 if (!OldR.isVirtual() || !NewR.isVirtual()) in replaceReg()
391 I->setReg(NewR); in replaceReg()
396 bool HexagonBitSimplify::replaceRegWithSub(Register OldR, Register NewR, in replaceRegWithSub() argument
399 if (!OldR.isVirtual() || !NewR.isVirtual()) in replaceRegWithSub()
407 I->setReg(NewR); in replaceRegWithSub()
414 Register NewR, unsigned NewSR, in replaceSubWithSub() argument
416 if (!OldR.isVirtual() || !NewR.isVirtual()) in replaceSubWithSub()
426 I->setReg(NewR); in replaceSubWithSub()
1374 Register NewR = MRI.createVirtualRegister(FRC); in processBlock() local
1376 BuildMI(B, At, DL, HII.get(TargetOpcode::COPY), NewR) in processBlock()
1378 HBS::replaceSubWithSub(RD.Reg, RD.Sub, NewR, 0, MRI); in processBlock()
1645 Register NewR = MRI.createVirtualRegister(FRC); in processBlock() local
1646 BuildMI(B, At, DL, HII.get(TargetOpcode::COPY), NewR) in processBlock()
1648 BT.put(BitTracker::RegisterRef(NewR), BT.get(MR)); in processBlock()
1649 HBS::replaceReg(R, NewR, MRI); in processBlock()
1664 Register NewR = MRI.createVirtualRegister(FRC); in processBlock() local
1665 BuildMI(B, At, DL, HII.get(TargetOpcode::REG_SEQUENCE), NewR) in processBlock()
1670 BT.put(BitTracker::RegisterRef(NewR), BT.get(R)); in processBlock()
1671 HBS::replaceReg(R, NewR, MRI); in processBlock()
2061 Register NewR = MRI.createVirtualRegister(&Hexagon::DoubleRegsRegClass); in genPackhl() local
2065 BuildMI(B, At, DL, HII.get(Hexagon::S2_packhl), NewR) in genPackhl()
2068 HBS::replaceSubWithSub(RD.Reg, RD.Sub, NewR, 0, MRI); in genPackhl()
2069 BT.put(BitTracker::RegisterRef(NewR), RC); in genPackhl()
2088 unsigned NewR = 0; in genExtractHalf() local
2093 NewR = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass); in genExtractHalf()
2094 BuildMI(B, At, DL, HII.get(Hexagon::A2_zxth), NewR) in genExtractHalf()
2099 NewR = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass); in genExtractHalf()
2100 BuildMI(B, MI, DL, HII.get(Hexagon::S2_lsr_i_r), NewR) in genExtractHalf()
2105 if (NewR == 0) in genExtractHalf()
2107 HBS::replaceSubWithSub(RD.Reg, RD.Sub, NewR, 0, MRI); in genExtractHalf()
2108 BT.put(BitTracker::RegisterRef(NewR), RC); in genExtractHalf()
2133 Register NewR = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass); in genCombineHalf() local
2136 BuildMI(B, At, DL, HII.get(COpc), NewR) in genCombineHalf()
2139 HBS::replaceSubWithSub(RD.Reg, RD.Sub, NewR, 0, MRI); in genCombineHalf()
2140 BT.put(BitTracker::RegisterRef(NewR), RC); in genCombineHalf()
2190 Register NewR = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass); in genExtractLow() local
2193 auto MIB = BuildMI(B, At, DL, HII.get(NewOpc), NewR) in genExtractLow()
2199 HBS::replaceSubWithSub(RD.Reg, RD.Sub, NewR, 0, MRI); in genExtractLow()
2200 BT.put(BitTracker::RegisterRef(NewR), RC); in genExtractLow()
2312 unsigned NewR = 0; in genBitSplit() local
2330 NewR = Op0.getReg(); in genBitSplit()
2333 if (!NewR) { in genBitSplit()
2334 NewR = MRI.createVirtualRegister(&Hexagon::DoubleRegsRegClass); in genBitSplit()
2335 auto NewBS = BuildMI(B, At, DL, HII.get(Hexagon::A4_bitspliti), NewR) in genBitSplit()
2341 HBS::replaceRegWithSub(RD.Reg, NewR, Hexagon::isub_lo, MRI); in genBitSplit()
2342 HBS::replaceRegWithSub(S, NewR, Hexagon::isub_hi, MRI); in genBitSplit()
2344 HBS::replaceRegWithSub(S, NewR, Hexagon::isub_lo, MRI); in genBitSplit()
2345 HBS::replaceRegWithSub(RD.Reg, NewR, Hexagon::isub_hi, MRI); in genBitSplit()
2395 Register NewR = MRI.createVirtualRegister(&Hexagon::PredRegsRegClass); in simplifyTstbit() local
2396 BuildMI(B, At, DL, HII.get(Hexagon::S2_tstbit_i), NewR) in simplifyTstbit()
2399 HBS::replaceReg(RD.Reg, NewR, MRI); in simplifyTstbit()
2400 BT.put(NewR, RC); in simplifyTstbit()
2404 Register NewR = MRI.createVirtualRegister(&Hexagon::PredRegsRegClass); in simplifyTstbit() local
2406 BuildMI(B, At, DL, HII.get(NewOpc), NewR); in simplifyTstbit()
2407 HBS::replaceReg(RD.Reg, NewR, MRI); in simplifyTstbit()
2577 Register NewR = MRI.createVirtualRegister(FRC); in simplifyExtractLow() local
2580 auto MIB = BuildMI(B, At, DL, HII.get(ExtOpc), NewR) in simplifyExtractLow()
2602 HBS::replaceReg(RD.Reg, NewR, MRI); in simplifyExtractLow()
2603 BT.put(BitTracker::RegisterRef(NewR), RC); in simplifyExtractLow()
2649 Register NewR = MRI.createVirtualRegister(FRC); in simplifyRCmp0() local
2650 BuildMI(B, At, DL, HII.get(Hexagon::A2_tfrsi), NewR) in simplifyRCmp0()
2652 HBS::replaceReg(RD.Reg, NewR, MRI); in simplifyRCmp0()
2658 BT.put(BitTracker::RegisterRef(NewR), NewRC); in simplifyRCmp0()
2714 Register NewR = MRI.createVirtualRegister(FRC); in simplifyRCmp0() local
2715 BuildMI(B, At, DL, HII.get(Hexagon::C2_muxii), NewR) in simplifyRCmp0()
2719 HBS::replaceReg(RD.Reg, NewR, MRI); in simplifyRCmp0()
2724 BT.put(BitTracker::RegisterRef(NewR), NewRC); in simplifyRCmp0()