| /openbsd-src/gnu/llvm/llvm/lib/Target/Hexagon/MCTargetDesc/ |
| H A D | HexagonMCShuffler.cpp | 33 void HexagonMCShuffler::init(MCInst &MCB) { in init() argument 34 if (HexagonMCInstrInfo::isBundle(MCB)) { in init() 37 for (const auto &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init() 51 Loc = MCB.getLoc(); in init() 52 BundleFlags = MCB.getOperand(0).getImm(); in init() 55 void HexagonMCShuffler::init(MCInst &MCB, MCInst const &AddMI, in init() argument 57 if (HexagonMCInstrInfo::isBundle(MCB)) { in init() 62 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init() 75 Loc = MCB.getLoc(); in init() 76 BundleFlags = MCB.getOperand(0).getImm(); in init() [all …]
|
| H A D | HexagonMCShuffler.h | 33 MCInst &MCB) in HexagonMCShuffler() argument 35 init(MCB); in HexagonMCShuffler() 40 MCInst &MCB, MCInst const &AddMI, bool InsertAtFront) in HexagonMCShuffler() argument 42 init(MCB, AddMI, InsertAtFront); in HexagonMCShuffler() 46 void copyTo(MCInst &MCB); 49 bool reshuffleTo(MCInst &MCB); 52 void init(MCInst &MCB); 53 void init(MCInst &MCB, MCInst const &AddMI, bool InsertAtFront); 60 MCInst &MCB); 62 MCSubtargetInfo const &STI, MCInst &MCB, [all …]
|
| H A D | HexagonMCChecker.cpp | 45 if (HexagonMCInstrInfo::isInnerLoop(MCB)) { in init() 49 if (HexagonMCInstrInfo::isOuterLoop(MCB)) { in init() 54 if (HexagonMCInstrInfo::isBundle(MCB)) in init() 56 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init() 65 init(MCB); in init() 204 : Context(Context), MCB(mcb), RI(ri), MCII(MCII), STI(STI), in HexagonMCChecker() 212 : Context(Other.Context), MCB(Other.MCB), RI(Other.RI), MCII(Other.MCII), in HexagonMCChecker() 302 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in checkAXOK() 309 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in checkAXOK() 324 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in reportBranchErrors() [all …]
|
| H A D | HexagonMCInstrInfo.cpp | 88 MCInstrInfo const &MCII, MCInst &MCB, in addConstExtender() argument 90 assert(HexagonMCInstrInfo::isBundle(MCB)); in addConstExtender() 99 MCB.addOperand(MCOperand::createInst(XMCI)); in addConstExtender() 125 MCContext &Context, MCInst &MCB, in canonicalizePacketImpl() argument 132 MCInst OrigMCB = MCB; in canonicalizePacketImpl() 137 HexagonMCInstrInfo::tryCompound(MCII, STI, Context, MCB); in canonicalizePacketImpl() 138 HexagonMCShuffle(Context, false, MCII, STI, MCB); in canonicalizePacketImpl() 142 ? HexagonMCInstrInfo::getDuplexPossibilties(MCII, STI, MCB) in canonicalizePacketImpl() 147 HexagonMCShuffle(Context, MCII, STI, MCB, possibleDuplexes); in canonicalizePacketImpl() 151 HexagonMCInstrInfo::padEndloop(MCB, Context); in canonicalizePacketImpl() [all …]
|
| H A D | HexagonMCDuplexInfo.cpp | 1030 MCInst const &MCB) { in getDuplexPossibilties() argument 1031 assert(isBundle(MCB)); in getDuplexPossibilties() 1034 unsigned numInstrInPacket = MCB.getNumOperands(); in getDuplexPossibilties() 1043 if (isStoreInst(MCB.getOperand(j).getInst()->getOpcode()) && in getDuplexPossibilties() 1044 isStoreInst(MCB.getOperand(k).getInst()->getOpcode())) { in getDuplexPossibilties() 1049 if (HexagonMCInstrInfo::isMemReorderDisabled(MCB)) // }:mem_noshuf in getDuplexPossibilties() 1054 MCII, *MCB.getOperand(k).getInst(), in getDuplexPossibilties() 1055 HexagonMCInstrInfo::hasExtenderForIndex(MCB, k - 1), in getDuplexPossibilties() 1056 *MCB.getOperand(j).getInst(), in getDuplexPossibilties() 1057 HexagonMCInstrInfo::hasExtenderForIndex(MCB, j - 1), in getDuplexPossibilties() [all …]
|
| H A D | HexagonMCELFStreamer.cpp | 62 void HexagonMCELFStreamer::emitInstruction(const MCInst &MCB, in emitInstruction() argument 64 assert(MCB.getOpcode() == Hexagon::BUNDLE); in emitInstruction() 65 assert(HexagonMCInstrInfo::bundleSize(MCB) <= HEXAGON_PACKET_SIZE); in emitInstruction() 66 assert(HexagonMCInstrInfo::bundleSize(MCB) > 0); in emitInstruction() 70 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in emitInstruction() 75 MCObjectStreamer::emitInstruction(MCB, STI); in emitInstruction()
|
| H A D | HexagonMCInstrInfo.h | 87 void addConstExtender(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB, 100 MCContext &Context, MCInst &MCB, 116 MCInst const *extenderForIndex(MCInst const &MCB, size_t Index); 117 void extendIfNeeded(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB, 134 MCInst const &MCB); 191 bool hasExtenderForIndex(MCInst const &MCB, size_t Index); 216 MCInst const &instruction(MCInst const &MCB, size_t Index); 319 bool LoopNeedsPadding(MCInst const &MCB);
|
| H A D | HexagonAsmBackend.cpp | 577 MCInst const &MCB = DF->getInst(); in fixupNeedsRelaxationAdvanced() local 578 assert(HexagonMCInstrInfo::isBundle(MCB)); in fixupNeedsRelaxationAdvanced() 582 MCB, Fixup.getOffset() / HEXAGON_INSTR_SIZE)); in fixupNeedsRelaxationAdvanced() 599 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) { in fixupNeedsRelaxationAdvanced() 637 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) { in fixupNeedsRelaxationAdvanced()
|
| H A D | HexagonMCCodeEmitter.h | 83 uint32_t parseBits(size_t Last, MCInst const &MCB, MCInst const &MCI) const;
|
| H A D | HexagonMCChecker.h | 36 MCInst &MCB; variable
|
| H A D | HexagonMCCodeEmitter.cpp | 340 uint32_t HexagonMCCodeEmitter::parseBits(size_t Last, MCInst const &MCB, in parseBits() argument 344 if (HexagonMCInstrInfo::isInnerLoop(MCB)) { in parseBits() 351 if (HexagonMCInstrInfo::isOuterLoop(MCB)) { in parseBits()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/Hexagon/ |
| H A D | HexagonMCInstLower.cpp | 37 MCInst &MCB, HexagonAsmPrinter &AP); 98 MCInst &MCB, HexagonAsmPrinter &AP) { in HexagonLowerToMC() argument 100 HexagonMCInstrInfo::setInnerLoop(MCB); in HexagonLowerToMC() 104 HexagonMCInstrInfo::setOuterLoop(MCB); in HexagonLowerToMC() 190 HexagonMCInstrInfo::extendIfNeeded(AP.OutContext, MCII, MCB, *MCI); in HexagonLowerToMC() 191 MCB.addOperand(MCOperand::createInst(MCI)); in HexagonLowerToMC()
|
| H A D | HexagonAsmPrinter.cpp | 59 MCInst &MCB, HexagonAsmPrinter &AP); 749 MCInst MCB; in emitInstruction() local 750 MCB.setOpcode(Hexagon::BUNDLE); in emitInstruction() 751 MCB.addOperand(MCOperand::createImm(0)); in emitInstruction() 760 HexagonLowerToMC(MCII, &*MII, MCB, *this); in emitInstruction() 762 HexagonLowerToMC(MCII, MI, MCB, *this); in emitInstruction() 768 HexagonMCInstrInfo::setMemReorderDisabled(MCB); in emitInstruction() 772 MCB, nullptr); in emitInstruction() 774 if (HexagonMCInstrInfo::bundleSize(MCB) == 0) in emitInstruction() 776 OutStreamer->emitInstruction(MCB, getSubtargetInfo()); in emitInstruction()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/Hexagon/AsmParser/ |
| H A D | HexagonAsmParser.cpp | 95 MCInst MCB; member in __anona3a8dbab0111::HexagonAsmParser 130 bool matchOneInstruction(MCInst &MCB, SMLoc IDLoc, 160 MCB.setOpcode(Hexagon::BUNDLE); in HexagonAsmParser() 468 LLVM_DEBUG(MCB.dump_pretty(dbgs())); in finishBundle() 471 MCB.setLoc(IDLoc); in finishBundle() 477 MCInst OrigBundle = MCB; in finishBundle() 478 HexagonMCChecker Check(getContext(), MII, STI, MCB, *RI, true); in finishBundle() 481 MII, STI, getContext(), MCB, &Check, true); in finishBundle() 484 if (HexagonMCInstrInfo::bundleSize(MCB) == 0) { in finishBundle() 485 assert(!HexagonMCInstrInfo::isInnerLoop(MCB)); in finishBundle() [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/Hexagon/Disassembler/ |
| H A D | HexagonDisassembler.cpp | 54 DecodeStatus getSingleInstruction(MCInst &Instr, MCInst &MCB, 302 DecodeStatus HexagonDisassembler::getSingleInstruction(MCInst &MI, MCInst &MCB, in getSingleInstruction() argument 311 auto BundleSize = HexagonMCInstrInfo::bundleSize(MCB); in getSingleInstruction() 315 HexagonMCInstrInfo::setInnerLoop(MCB); in getSingleInstruction() 317 HexagonMCInstrInfo::setOuterLoop(MCB); in getSingleInstruction() 323 MCB, HexagonMCInstrInfo::bundleSize(MCB)); in getSingleInstruction()
|