Home
last modified time | relevance | path

Searched refs:MCB (Results 1 – 25 of 44) sorted by relevance

12

/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/Hexagon/MCTargetDesc/
DHexagonMCShuffler.cpp35 void HexagonMCShuffler::init(MCInst &MCB) { in init() argument
36 if (HexagonMCInstrInfo::isBundle(MCB)) { in init()
39 for (const auto &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init()
53 Loc = MCB.getLoc(); in init()
54 BundleFlags = MCB.getOperand(0).getImm(); in init()
57 void HexagonMCShuffler::init(MCInst &MCB, MCInst const &AddMI, in init() argument
59 if (HexagonMCInstrInfo::isBundle(MCB)) { in init()
64 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init()
77 Loc = MCB.getLoc(); in init()
78 BundleFlags = MCB.getOperand(0).getImm(); in init()
[all …]
DHexagonMCShuffler.h33 MCSubtargetInfo const &STI, MCInst &MCB) in HexagonMCShuffler() argument
35 init(MCB); in HexagonMCShuffler()
39 MCSubtargetInfo const &STI, MCInst &MCB, 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);
58 MCSubtargetInfo const &STI, MCInst &MCB);
60 MCSubtargetInfo const &STI, MCInst &MCB,
[all …]
DHexagonMCChecker.cpp45 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()
196 : Context(Context), MCB(mcb), RI(ri), MCII(MCII), STI(STI), in HexagonMCChecker()
204 : Context(Other.Context), MCB(Other.MCB), RI(Other.RI), MCII(Other.MCII), in HexagonMCChecker()
281 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in checkAXOK()
288 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in checkAXOK()
303 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCII, MCB)) { in reportBranchErrors()
[all …]
DHexagonMCInstrInfo.cpp89 MCInstrInfo const &MCII, MCInst &MCB, in addConstExtender() argument
91 assert(HexagonMCInstrInfo::isBundle(MCB)); in addConstExtender()
100 MCB.addOperand(MCOperand::createInst(XMCI)); in addConstExtender()
126 MCContext &Context, MCInst &MCB, in canonicalizePacket() argument
135 HexagonMCInstrInfo::tryCompound(MCII, STI, Context, MCB); in canonicalizePacket()
136 HexagonMCShuffle(Context, false, MCII, STI, MCB); in canonicalizePacket()
139 MCInst InstBundlePreDuplex = MCInst(MCB); in canonicalizePacket()
143 HexagonMCInstrInfo::getDuplexPossibilties(MCII, STI, MCB); in canonicalizePacket()
144 HexagonMCShuffle(Context, MCII, STI, MCB, possibleDuplexes); in canonicalizePacket()
148 HexagonMCInstrInfo::padEndloop(MCB, Context); in canonicalizePacket()
[all …]
DHexagonMCDuplexInfo.cpp1033 MCInst const &MCB) { in getDuplexPossibilties() argument
1034 assert(isBundle(MCB)); in getDuplexPossibilties()
1037 unsigned numInstrInPacket = MCB.getNumOperands(); in getDuplexPossibilties()
1046 if (isStoreInst(MCB.getOperand(j).getInst()->getOpcode()) && in getDuplexPossibilties()
1047 isStoreInst(MCB.getOperand(k).getInst()->getOpcode())) { in getDuplexPossibilties()
1052 if (HexagonMCInstrInfo::isMemReorderDisabled(MCB)) // }:mem_noshuf in getDuplexPossibilties()
1057 MCII, *MCB.getOperand(k).getInst(), in getDuplexPossibilties()
1058 HexagonMCInstrInfo::hasExtenderForIndex(MCB, k - 1), in getDuplexPossibilties()
1059 *MCB.getOperand(j).getInst(), in getDuplexPossibilties()
1060 HexagonMCInstrInfo::hasExtenderForIndex(MCB, j - 1), in getDuplexPossibilties()
[all …]
DHexagonMCELFStreamer.cpp62 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()
DHexagonMCInstrInfo.h81 void addConstExtender(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB,
94 MCContext &Context, MCInst &MCB,
107 MCInst const *extenderForIndex(MCInst const &MCB, size_t Index);
108 void extendIfNeeded(MCContext &Context, MCInstrInfo const &MCII, MCInst &MCB,
125 MCInst const &MCB);
177 bool hasExtenderForIndex(MCInst const &MCB, size_t Index);
201 MCInst const &instruction(MCInst const &MCB, size_t Index);
DHexagonAsmBackend.cpp577 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()
/external/llvm/lib/Target/Hexagon/MCTargetDesc/
DHexagonMCShuffler.cpp31 void HexagonMCShuffler::init(MCInst &MCB) { in init() argument
32 if (HexagonMCInstrInfo::isBundle(MCB)) { in init()
35 for (const auto &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init()
48 BundleFlags = MCB.getOperand(0).getImm(); in init()
51 void HexagonMCShuffler::init(MCInst &MCB, MCInst const *AddMI, in init() argument
53 if (HexagonMCInstrInfo::isBundle(MCB)) { in init()
59 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init()
74 BundleFlags = MCB.getOperand(0).getImm(); in init()
77 void HexagonMCShuffler::copyTo(MCInst &MCB) { in copyTo() argument
78 MCB.clear(); in copyTo()
[all …]
DHexagonMCShuffler.h31 MCInst &MCB) in HexagonMCShuffler() argument
33 init(MCB); in HexagonMCShuffler()
36 MCInst &MCB, const MCInst *AddMI,
39 init(MCB, AddMI, bInsertAtFront); in HexagonShuffler()
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);
DHexagonMCInstrInfo.cpp32 MCInstrInfo const &MCII, MCInst &MCB, in addConstExtender() argument
34 assert(HexagonMCInstrInfo::isBundle(MCB)); in addConstExtender()
42 MCB.addOperand(MCOperand::createInst(XMCI)); in addConstExtender()
60 MCContext &Context, MCInst &MCB, in canonicalizePacket() argument
65 HexagonMCInstrInfo::tryCompound(MCII, Context, MCB); in canonicalizePacket()
70 HexagonMCShuffle(MCII, STI, MCB); in canonicalizePacket()
73 MCInst InstBundlePreDuplex = MCInst(MCB); in canonicalizePacket()
76 possibleDuplexes = HexagonMCInstrInfo::getDuplexPossibilties(MCII, MCB); in canonicalizePacket()
77 HexagonMCShuffle(MCII, STI, Context, MCB, possibleDuplexes); in canonicalizePacket()
81 HexagonMCInstrInfo::padEndloop(Context, MCB); in canonicalizePacket()
[all …]
DHexagonMCELFStreamer.cpp41 MCInst *MCB; in EmitInstruction() local
45 MCB = &HMI; in EmitInstruction()
47 MCB = const_cast<MCInst *>(&MCK); in EmitInstruction()
51 HexagonMCInstrInfo::padEndloop(getContext(), *MCB); in EmitInstruction()
52 HexagonMCShuffle(*MCII, STI, *MCB); in EmitInstruction()
54 assert(HexagonMCInstrInfo::bundleSize(*MCB) <= HEXAGON_PACKET_SIZE); in EmitInstruction()
56 for (auto &I : HexagonMCInstrInfo::bundleInstructions(*MCB)) { in EmitInstruction()
73 for (auto const &I : HexagonMCInstrInfo::bundleInstructions(*MCB)) { in EmitInstruction()
77 MCObjectStreamer::EmitInstruction(*MCB, STI); in EmitInstruction()
DHexagonMCChecker.cpp38 if (HexagonMCInstrInfo::isInnerLoop(MCB)) { in init()
42 if (HexagonMCInstrInfo::isOuterLoop(MCB)) { in init()
47 if (HexagonMCInstrInfo::isBundle(MCB)) in init()
49 for (auto const&I : HexagonMCInstrInfo::bundleInstructions(MCB)) { in init()
53 init(MCB); in init()
228 : MCB(mcb), MCBDX(mcbdx), RI(ri), MCII(MCII), STI(STI), in HexagonMCChecker()
272 if (HexagonMCInstrInfo::isBundle(MCB)) { in checkBranches()
279 i < MCB.size(); ++i) { in checkBranches()
280 MCInst const &MCI = *MCB.begin()[i].getInst(); in checkBranches()
307 if (HexagonMCInstrInfo::isInnerLoop(MCB) || in checkBranches()
[all …]
DHexagonMCDuplexInfo.cpp1014 MCInst const &MCB) { in getDuplexPossibilties() argument
1015 assert(isBundle(MCB)); in getDuplexPossibilties()
1018 unsigned numInstrInPacket = MCB.getNumOperands(); in getDuplexPossibilties()
1027 if (isStoreInst(MCB.getOperand(j).getInst()->getOpcode()) && in getDuplexPossibilties()
1028 isStoreInst(MCB.getOperand(k).getInst()->getOpcode())) { in getDuplexPossibilties()
1033 if (HexagonMCInstrInfo::isMemReorderDisabled(MCB)) // }:mem_noshuf in getDuplexPossibilties()
1038 MCII, *MCB.getOperand(k).getInst(), in getDuplexPossibilties()
1039 HexagonMCInstrInfo::hasExtenderForIndex(MCB, k - 1), in getDuplexPossibilties()
1040 *MCB.getOperand(j).getInst(), in getDuplexPossibilties()
1041 HexagonMCInstrInfo::hasExtenderForIndex(MCB, j - 1), in getDuplexPossibilties()
[all …]
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);
277 void replaceDuplex(MCContext &Context, MCInst &MCB, DuplexCandidate Candidate);
DHexagonAsmBackend.cpp559 MCInst const &MCB = DF->getInst(); in fixupNeedsRelaxationAdvanced() local
560 assert(HexagonMCInstrInfo::isBundle(MCB)); in fixupNeedsRelaxationAdvanced()
564 MCB, Fixup.getOffset() / HEXAGON_INSTR_SIZE)); in fixupNeedsRelaxationAdvanced()
581 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) { in fixupNeedsRelaxationAdvanced()
619 if (HexagonMCInstrInfo::bundleSize(MCB) < HEXAGON_PACKET_SIZE) { in fixupNeedsRelaxationAdvanced()
DHexagonMCCodeEmitter.h44 uint32_t parseBits(size_t Instruction, size_t Last, MCInst const &MCB,
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/Hexagon/
DHexagonMCInstLower.cpp38 MCInst &MCB, HexagonAsmPrinter &AP);
99 MCInst &MCB, HexagonAsmPrinter &AP) { in HexagonLowerToMC() argument
101 HexagonMCInstrInfo::setInnerLoop(MCB); in HexagonLowerToMC()
105 HexagonMCInstrInfo::setOuterLoop(MCB); in HexagonLowerToMC()
179 HexagonMCInstrInfo::extendIfNeeded(AP.OutContext, MCII, MCB, *MCI); in HexagonLowerToMC()
180 MCB.addOperand(MCOperand::createInst(MCI)); in HexagonLowerToMC()
DHexagonAsmPrinter.cpp59 MCInst &MCB, HexagonAsmPrinter &AP);
752 MCInst MCB; in EmitInstruction() local
753 MCB.setOpcode(Hexagon::BUNDLE); in EmitInstruction()
754 MCB.addOperand(MCOperand::createImm(0)); in EmitInstruction()
764 HexagonLowerToMC(MCII, &*MII, MCB, *this); in EmitInstruction()
766 HexagonLowerToMC(MCII, MI, MCB, *this); in EmitInstruction()
772 HexagonMCInstrInfo::setMemReorderDisabled(MCB); in EmitInstruction()
776 MCB, nullptr); in EmitInstruction()
778 if (HexagonMCInstrInfo::bundleSize(MCB) == 0) in EmitInstruction()
780 OutStreamer->EmitInstruction(MCB, getSubtargetInfo()); in EmitInstruction()
/external/llvm/lib/Target/Hexagon/
DHexagonMCInstLower.cpp31 MCInst &MCB, HexagonAsmPrinter &AP);
91 MCInst &MCB, HexagonAsmPrinter &AP) { in HexagonLowerToMC() argument
93 HexagonMCInstrInfo::setInnerLoop(MCB); in HexagonLowerToMC()
97 HexagonMCInstrInfo::setOuterLoop(MCB); in HexagonLowerToMC()
168 HexagonMCInstrInfo::extendIfNeeded(AP.OutContext, MCII, MCB, *MCI); in HexagonLowerToMC()
169 MCB.addOperand(MCOperand::createInst(MCI)); in HexagonLowerToMC()
DHexagonAsmPrinter.cpp60 MCInst &MCB, HexagonAsmPrinter &AP);
586 MCInst MCB = HexagonMCInstrInfo::createBundle(); in EmitInstruction() local
599 HexagonLowerToMC(MCII, &*MII, MCB, *this); in EmitInstruction()
602 HexagonLowerToMC(MCII, MI, MCB, *this); in EmitInstruction()
605 MCII, *Subtarget, OutStreamer->getContext(), MCB, nullptr); in EmitInstruction()
608 if(HexagonMCInstrInfo::bundleSize(MCB) == 0) in EmitInstruction()
610 OutStreamer->EmitInstruction(MCB, getSubtargetInfo()); in EmitInstruction()
/external/llvm/lib/Target/Hexagon/AsmParser/
DHexagonAsmParser.cpp82 MCInst MCB; member in __anon03f42fff0111::HexagonAsmParser
108 bool matchOneInstruction(MCInst &MCB, SMLoc IDLoc,
141 MCII (MII), MCB(HexagonMCInstrInfo::createBundle()), InBrackets(false) { in HexagonAsmParser()
622 DEBUG(MCB.dump_pretty(dbgs())); in finishBundle()
627 HexagonMCChecker Check(MCII, getSTI(), MCB, MCB, *RI); in finishBundle()
630 getContext(), MCB, in finishBundle()
660 Twine N(HexagonMCInstrInfo::isInnerLoop(MCB) ? '0' : '1'); in finishBundle()
709 MCB.setLoc(IDLoc); in finishBundle()
710 if (HexagonMCInstrInfo::bundleSize(MCB) == 0) { in finishBundle()
711 assert(!HexagonMCInstrInfo::isInnerLoop(MCB)); in finishBundle()
[all …]
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/Hexagon/AsmParser/
DHexagonAsmParser.cpp96 MCInst MCB; member in __anon63498e570111::HexagonAsmParser
128 bool matchOneInstruction(MCInst &MCB, SMLoc IDLoc,
164 MCB.setOpcode(Hexagon::BUNDLE); in HexagonAsmParser()
469 LLVM_DEBUG(MCB.dump_pretty(dbgs())); in finishBundle()
472 MCB.setLoc(IDLoc); in finishBundle()
475 HexagonMCChecker Check(getContext(), MII, getSTI(), MCB, *RI); in finishBundle()
478 getContext(), MCB, in finishBundle()
482 if (HexagonMCInstrInfo::bundleSize(MCB) == 0) { in finishBundle()
483 assert(!HexagonMCInstrInfo::isInnerLoop(MCB)); in finishBundle()
484 assert(!HexagonMCInstrInfo::isOuterLoop(MCB)); in finishBundle()
[all …]
/external/llvm/lib/Target/Hexagon/Disassembler/
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, in getSingleInstruction() argument
199 auto BundleSize = HexagonMCInstrInfo::bundleSize(MCB); in getSingleInstruction()
203 HexagonMCInstrInfo::setInnerLoop(MCB); in getSingleInstruction()
205 HexagonMCInstrInfo::setOuterLoop(MCB); in getSingleInstruction()
393 adjustExtendedInstructions(MI, MCB); in getSingleInstruction()
395 HexagonMCInstrInfo::extenderForIndex(MCB, in getSingleInstruction()
396 HexagonMCInstrInfo::bundleSize(MCB)); in getSingleInstruction()
408 MCInst const &MCB) const { in adjustExtendedInstructions()
[all …]
/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/Hexagon/Disassembler/
DHexagonDisassembler.cpp55 DecodeStatus getSingleInstruction(MCInst &Instr, MCInst &MCB,
346 MCInst &MI, MCInst &MCB, ArrayRef<uint8_t> Bytes, uint64_t Address, in getSingleInstruction() argument
352 auto BundleSize = HexagonMCInstrInfo::bundleSize(MCB); in getSingleInstruction()
356 HexagonMCInstrInfo::setInnerLoop(MCB); in getSingleInstruction()
358 HexagonMCInstrInfo::setOuterLoop(MCB); in getSingleInstruction()
364 MCB, HexagonMCInstrInfo::bundleSize(MCB)); in getSingleInstruction()

12