Searched refs:MCB (Results 1 - 15 of 15) sorted by relevance

/external/llvm/lib/Target/Hexagon/MCTargetDesc/
H A DHexagonMCShuffler.cpp31 void HexagonMCShuffler::init(MCInst &MCB) { argument
32 if (HexagonMCInstrInfo::isBundle(MCB)) {
35 for (const auto &I : HexagonMCInstrInfo::bundleInstructions(MCB)) {
48 BundleFlags = MCB.getOperand(0).getImm();
51 void HexagonMCShuffler::init(MCInst &MCB, MCInst const *AddMI, argument
53 if (HexagonMCInstrInfo::isBundle(MCB)) {
59 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) {
74 BundleFlags = MCB.getOperand(0).getImm();
77 void HexagonMCShuffler::copyTo(MCInst &MCB) { argument
78 MCB
91 reshuffleTo(MCInst &MCB) argument
101 HexagonMCShuffle(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB) argument
151 HexagonMCShuffle(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCContext &Context, MCInst &MCB, SmallVector<DuplexCandidate, 8> possibleDuplexes) argument
204 HexagonMCShuffle(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB, MCInst const *AddMI, int fixupCount) argument
[all...]
H A DHexagonMCShuffler.h31 MCInst &MCB)
33 init(MCB);
36 MCInst &MCB, const MCInst *AddMI,
39 init(MCB, AddMI, bInsertAtFront);
43 void copyTo(MCInst &MCB);
45 bool reshuffleTo(MCInst &MCB);
51 void init(MCInst &MCB);
52 void init(MCInst &MCB, const MCInst *AddMI, bool bInsertAtFront = false);
30 HexagonMCShuffler(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB) argument
35 HexagonMCShuffler(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB, const MCInst *AddMI, bool bInsertAtFront = false) argument
H A DHexagonMCELFStreamer.cpp41 MCInst *MCB; local
45 MCB = &HMI;
47 MCB = const_cast<MCInst *>(&MCK);
51 HexagonMCInstrInfo::padEndloop(getContext(), *MCB); local
52 HexagonMCShuffle(*MCII, STI, *MCB);
54 assert(HexagonMCInstrInfo::bundleSize(*MCB) <= HEXAGON_PACKET_SIZE);
56 for (auto &I : HexagonMCInstrInfo::bundleInstructions(*MCB)) {
71 // At this point, MCB is a bundle
73 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(*MCB)) {
77 MCObjectStreamer::EmitInstruction(*MCB, ST
[all...]
H A DHexagonMCInstrInfo.cpp32 MCInstrInfo const &MCII, MCInst &MCB,
34 assert(HexagonMCInstrInfo::isBundle(MCB));
42 MCB.addOperand(MCOperand::createInst(XMCI));
60 MCContext &Context, MCInst &MCB,
65 HexagonMCInstrInfo::tryCompound(MCII, Context, MCB);
70 HexagonMCShuffle(MCII, STI, MCB);
73 MCInst InstBundlePreDuplex = MCInst(MCB);
76 possibleDuplexes = HexagonMCInstrInfo::getDuplexPossibilties(MCII, MCB);
77 HexagonMCShuffle(MCII, STI, Context, MCB, possibleDuplexes);
81 HexagonMCInstrInfo::padEndloop(Context, MCB);
31 addConstExtender(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB, MCInst const &MCI) argument
58 canonicalizePacket(MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCContext &Context, MCInst &MCB, HexagonMCChecker *Check) argument
149 extenderForIndex(MCInst const &MCB, size_t Index) argument
161 extendIfNeeded(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB, MCInst const &MCI) argument
397 hasExtenderForIndex(MCInst const &MCB, size_t Index) argument
415 instruction(MCInst const &MCB, size_t Index) argument
712 padEndloop(MCContext &Context, MCInst &MCB) argument
743 replaceDuplex(MCContext &Context, MCInst &MCB, DuplexCandidate Candidate) argument
[all...]
H A DHexagonMCChecker.cpp38 if (HexagonMCInstrInfo::isInnerLoop(MCB)) {
42 if (HexagonMCInstrInfo::isOuterLoop(MCB)) {
47 if (HexagonMCInstrInfo::isBundle(MCB))
49 for (auto const&I : HexagonMCInstrInfo::bundleInstructions(MCB)) {
53 init(MCB);
228 : MCB(mcb), MCBDX(mcbdx), RI(ri), MCII(MCII), STI(STI),
272 if (HexagonMCInstrInfo::isBundle(MCB)) {
279 i < MCB.size(); ++i) {
280 MCInst const &MCI = *MCB.begin()[i].getInst();
307 if (HexagonMCInstrInfo::isInnerLoop(MCB) ||
[all...]
H A DHexagonMCInstrInfo.h56 void addConstExtender(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB,
67 MCContext &Context, MCInst &MCB,
76 MCInst const *extenderForIndex(MCInst const &MCB, size_t Index);
77 void extendIfNeeded(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB,
90 MCInst const *extenderForIndex(MCInst const &MCB, size_t Index);
109 MCInst const &MCB);
157 bool hasExtenderForIndex(MCInst const &MCB, size_t Index);
166 MCInst const &instruction(MCInst const &MCB, size_t Index);
276 // Replace the instructions inside MCB, represented by Candidate
277 void replaceDuplex(MCContext &Context, MCInst &MCB, DuplexCandidat
[all...]
H A DHexagonMCDuplexInfo.cpp1014 MCInst const &MCB) {
1015 assert(isBundle(MCB));
1018 unsigned numInstrInPacket = MCB.getNumOperands();
1027 if (isStoreInst(MCB.getOperand(j).getInst()->getOpcode()) &&
1028 isStoreInst(MCB.getOperand(k).getInst()->getOpcode())) {
1033 if (HexagonMCInstrInfo::isMemReorderDisabled(MCB)) // }:mem_noshuf
1038 MCII, *MCB.getOperand(k).getInst(),
1039 HexagonMCInstrInfo::hasExtenderForIndex(MCB, k - 1),
1040 *MCB.getOperand(j).getInst(),
1041 HexagonMCInstrInfo::hasExtenderForIndex(MCB,
1013 getDuplexPossibilties(MCInstrInfo const &MCII, MCInst const &MCB) argument
[all...]
H A DHexagonMCCodeEmitter.h43 // Return parse bits for instruction `MCI' inside bundle `MCB'
44 uint32_t parseBits(size_t Instruction, size_t Last, MCInst const &MCB,
H A DHexagonAsmBackend.cpp559 MCInst const &MCB = DF->getInst(); variable
560 assert(HexagonMCInstrInfo::isBundle(MCB));
564 MCB, Fixup.getOffset() / HEXAGON_INSTR_SIZE));
581 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) {
619 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) {
H A DHexagonMCChecker.h74 MCInst& MCB; member in class:llvm::HexagonMCChecker
H A DHexagonMCCodeEmitter.cpp41 MCInst const &MCB,
45 if (HexagonMCInstrInfo::isInnerLoop(MCB)) {
52 if (HexagonMCInstrInfo::isOuterLoop(MCB)) {
40 parseBits(size_t Instruction, size_t Last, MCInst const &MCB, MCInst const &MCI) const argument
/external/llvm/lib/Target/Hexagon/
H A DHexagonMCInstLower.cpp31 MCInst &MCB, HexagonAsmPrinter &AP);
91 MCInst &MCB, HexagonAsmPrinter &AP) {
93 HexagonMCInstrInfo::setInnerLoop(MCB);
97 HexagonMCInstrInfo::setOuterLoop(MCB);
168 HexagonMCInstrInfo::extendIfNeeded(AP.OutContext, MCII, MCB, *MCI);
169 MCB.addOperand(MCOperand::createInst(MCI));
90 HexagonLowerToMC(const MCInstrInfo &MCII, const MachineInstr *MI, MCInst &MCB, HexagonAsmPrinter &AP) argument
H A DHexagonAsmPrinter.cpp60 MCInst &MCB, HexagonAsmPrinter &AP);
586 MCInst MCB = HexagonMCInstrInfo::createBundle(); local
599 HexagonLowerToMC(MCII, &*MII, MCB, *this);
602 HexagonLowerToMC(MCII, MI, MCB, *this);
605 MCII, *Subtarget, OutStreamer->getContext(), MCB, nullptr);
608 if(HexagonMCInstrInfo::bundleSize(MCB) == 0)
610 OutStreamer->EmitInstruction(MCB, getSubtargetInfo());
/external/llvm/lib/Target/Hexagon/AsmParser/
H A DHexagonAsmParser.cpp82 MCInst MCB; member in class:__anon12949::HexagonAsmParser
108 bool matchOneInstruction(MCInst &MCB, SMLoc IDLoc,
141 MCII (MII), MCB(HexagonMCInstrInfo::createBundle()), InBrackets(false) {
622 DEBUG(MCB.dump_pretty(dbgs()));
627 HexagonMCChecker Check(MCII, getSTI(), MCB, MCB, *RI);
630 getContext(), MCB,
660 Twine N(HexagonMCInstrInfo::isInnerLoop(MCB) ? '0' : '1');
709 MCB.setLoc(IDLoc);
710 if (HexagonMCInstrInfo::bundleSize(MCB)
[all...]
/external/llvm/lib/Target/Hexagon/Disassembler/
H A DHexagonDisassembler.cpp49 DecodeStatus getSingleInstruction(MCInst &Instr, MCInst &MCB,
58 void adjustExtendedInstructions(MCInst &MCI, MCInst const &MCB) const;
192 MCInst &MI, MCInst &MCB, ArrayRef<uint8_t> Bytes, uint64_t Address,
199 auto BundleSize = HexagonMCInstrInfo::bundleSize(MCB);
203 HexagonMCInstrInfo::setInnerLoop(MCB);
205 HexagonMCInstrInfo::setOuterLoop(MCB);
393 adjustExtendedInstructions(MI, MCB);
395 HexagonMCInstrInfo::extenderForIndex(MCB,
396 HexagonMCInstrInfo::bundleSize(MCB));
408 MCInst const &MCB) cons
191 getSingleInstruction( MCInst &MI, MCInst &MCB, ArrayRef<uint8_t> Bytes, uint64_t Address, raw_ostream &os, raw_ostream &cs, bool &Complete) const argument
625 fullValue(MCInstrInfo const &MCII, MCInst &MCB, MCInst &MI, int64_t Value) argument
[all...]

Completed in 216 milliseconds