/openbsd/gnu/llvm/llvm/lib/Target/Hexagon/MCTargetDesc/ |
H A D | HexagonMCShuffler.cpp | 34 if (HexagonMCInstrInfo::isBundle(MCB)) { in init() 51 Loc = MCB.getLoc(); in init() 75 Loc = MCB.getLoc(); in init() 80 MCB.clear(); in copyTo() 82 MCB.setLoc(Loc); in copyTo() 96 copyTo(MCB); in reshuffleTo() 99 LLVM_DEBUG(MCB.dump()); in reshuffleTo() 127 return MCS.reshuffleTo(MCB); in HexagonMCShuffle() 156 MCInst Attempt(MCB); in HexagonMCShuffle() 161 MCS.copyTo(MCB); in HexagonMCShuffle() [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() 65 init(MCB); in init() 212 : Context(Other.Context), MCB(Other.MCB), RI(Other.RI), MCII(Other.MCII), in HexagonMCChecker() 331 if (!HexagonMCInstrInfo::isInnerLoop(MCB) && in checkHWLoop() 332 !HexagonMCInstrInfo::isOuterLoop(MCB)) in checkHWLoop() 336 reportError(MCB.getLoc(), in checkHWLoop() 728 MCB.getLoc(), in checkValidTmpDst() 784 reportError(MCB.getLoc(), Msg); in reportError() [all …]
|
H A D | HexagonMCInstrInfo.cpp | 90 assert(HexagonMCInstrInfo::isBundle(MCB)); in addConstExtender() 99 MCB.addOperand(MCOperand::createInst(XMCI)); in addConstExtender() 132 MCInst OrigMCB = MCB; in canonicalizePacketImpl() 151 HexagonMCInstrInfo::padEndloop(MCB, Context); in canonicalizePacketImpl() 224 assert(Index <= bundleSize(MCB)); in extenderForIndex() 238 addConstExtender(Context, MCII, MCB, MCI); in extendIfNeeded() 527 assert(isBundle(MCB)); in instruction() 924 assert(isBundle(MCB)); in padEndloop() 925 while (LoopNeedsPadding(MCB)) in padEndloop() 997 assert(isBundle(MCB)); in replaceDuplex() [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() 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() 1079 MCII, *MCB.getOperand(j).getInst(), 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/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/gnu/llvm/llvm/lib/Target/Hexagon/AsmParser/ |
H A D | HexagonAsmParser.cpp | 95 MCInst MCB; member in __anondb6d46610111::HexagonAsmParser 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() 493 Out.emitInstruction(MCB, STI); in finishBundle() 512 HexagonMCInstrInfo::setInnerLoop(MCB); in matchBundleOptions() 513 HexagonMCInstrInfo::setOuterLoop(MCB); in matchBundleOptions() 515 HexagonMCInstrInfo::setInnerLoop(MCB); in matchBundleOptions() 517 HexagonMCInstrInfo::setOuterLoop(MCB); in matchBundleOptions() [all …]
|
/openbsd/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()
|