LLVM
8.0.1
|
#include "Target/Hexagon/MCTargetDesc/HexagonMCShuffler.h"
Public Member Functions | |
HexagonMCShuffler (MCContext &Context, bool Fatal, MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB) | |
HexagonMCShuffler (MCContext &Context, bool Fatal, MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &MCB, MCInst const &AddMI, bool InsertAtFront) | |
void | copyTo (MCInst &MCB) |
bool | reshuffleTo (MCInst &MCB) |
Public Member Functions inherited from llvm::HexagonShuffler | |
HexagonShuffler (MCContext &Context, bool ReportErrors, MCInstrInfo const &MCII, MCSubtargetInfo const &STI) | |
void | reset () |
bool | check () |
Check that the packet is legal and enforce relative insn order. More... | |
bool | shuffle () |
unsigned | size () const |
bool | isMemReorderDisabled () const |
iterator | begin () |
iterator | end () |
void | append (MCInst const &ID, MCInst const *Extender, unsigned S) |
void | reportError (Twine const &Msg) |
Additional Inherited Members | |
Public Types inherited from llvm::HexagonShuffler | |
using | iterator = HexagonPacket::iterator |
Protected Member Functions inherited from llvm::HexagonShuffler | |
void | applySlotRestrictions () |
void | restrictSlot1AOK () |
void | restrictNoSlot1Store () |
Protected Attributes inherited from llvm::HexagonShuffler | |
MCContext & | Context |
int64_t | BundleFlags |
MCInstrInfo const & | MCII |
MCSubtargetInfo const & | STI |
SMLoc | Loc |
bool | ReportErrors |
std::vector< std::pair< SMLoc, std::string > > | AppliedRestrictions |
Definition at line 30 of file HexagonMCShuffler.h.
|
inline |
Definition at line 32 of file HexagonMCShuffler.h.
|
inline |
Definition at line 38 of file HexagonMCShuffler.h.
References llvm::HexagonShuffler::Context, copyTo(), llvm::HexagonMCShuffle(), llvm::HexagonShuffler::MCII, reshuffleTo(), and llvm::HexagonShuffler::STI.
void HexagonMCShuffler::copyTo | ( | MCInst & | MCB | ) |
Definition at line 81 of file HexagonMCShuffler.cpp.
References llvm::MCInst::addOperand(), llvm::HexagonShuffler::begin(), llvm::HexagonShuffler::BundleFlags, llvm::MCInst::clear(), llvm::MCOperand::createImm(), llvm::MCOperand::createInst(), llvm::HexagonShuffler::end(), I, llvm::HexagonShuffler::Loc, and llvm::MCInst::setLoc().
Referenced by llvm::HexagonMCShuffle(), HexagonMCShuffler(), and reshuffleTo().
Definition at line 96 of file HexagonMCShuffler.cpp.
References copyTo(), llvm::MCInst::dump(), LLVM_DEBUG, and llvm::HexagonShuffler::shuffle().
Referenced by llvm::HexagonMCShuffle(), and HexagonMCShuffler().