• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/Hexagon/MCTargetDesc/

Lines Matching defs:MCB

33 void HexagonMCShuffler::init(MCInst &MCB) {
34 if (HexagonMCInstrInfo::isBundle(MCB)) {
37 for (const auto &I : HexagonMCInstrInfo::bundleInstructions(MCB)) {
51 Loc = MCB.getLoc();
52 BundleFlags = MCB.getOperand(0).getImm();
55 void HexagonMCShuffler::init(MCInst &MCB, MCInst const &AddMI,
57 if (HexagonMCInstrInfo::isBundle(MCB)) {
62 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) {
75 Loc = MCB.getLoc();
76 BundleFlags = MCB.getOperand(0).getImm();
79 void HexagonMCShuffler::copyTo(MCInst &MCB) {
80 MCB.clear();
81 MCB.addOperand(MCOperand::createImm(BundleFlags));
82 MCB.setLoc(Loc);
89 MCB.addOperand(MCOperand::createInst(Extender));
90 MCB.addOperand(MCOperand::createInst(&MI));
94 bool HexagonMCShuffler::reshuffleTo(MCInst &MCB) {
97 copyTo(MCB);
100 LLVM_DEBUG(MCB.dump());
106 MCInst &MCB) {
107 HexagonMCShuffler MCS(Context, Fatal, MCII, STI, MCB);
113 if (!HexagonMCInstrInfo::bundleSize(MCB)) {
123 } else if (!HexagonMCInstrInfo::isBundle(MCB)) {
128 return MCS.reshuffleTo(MCB);
133 MCSubtargetInfo const &STI, MCInst &MCB,
138 if (!HexagonMCInstrInfo::bundleSize(MCB)) {
148 } else if (!HexagonMCInstrInfo::isBundle(MCB)) {
157 MCInst Attempt(MCB);
162 MCS.copyTo(MCB);
166 doneShuffling = MCS.reshuffleTo(MCB);
173 HexagonMCShuffler MCS(Context, false, MCII, STI, MCB);
174 doneShuffling = MCS.reshuffleTo(MCB); // shuffle
183 MCSubtargetInfo const &STI, MCInst &MCB,
185 if (!HexagonMCInstrInfo::isBundle(MCB))
190 unsigned int bundleSize = HexagonMCInstrInfo::bundleSize(MCB);
193 bool bhasDuplex = HexagonMCInstrInfo::hasDuplex(MCII, MCB);
213 unsigned maxBundleSize = (HexagonMCInstrInfo::hasImmExt(MCB))
219 HexagonMCShuffler MCS(Context, false, MCII, STI, MCB, AddMI, false);
220 return MCS.reshuffleTo(MCB);