LLVM API Documentation
#include <HexagonMCInst.h>
Public Member Functions | |
HexagonMCInst () | |
HexagonMCInst (const MCInstrDesc &mcid) | |
bool | isPacketStart () const |
bool | isPacketEnd () const |
void | setPacketStart (bool Y) |
void | setPacketEnd (bool Y) |
void | resetPacket () |
unsigned | getUnits (const HexagonTargetMachine *TM) const |
unsigned | getType () const |
void | setDesc (const MCInstrDesc &mcid) |
const MCInstrDesc & | getDesc (void) const |
bool | isCanon () const |
bool | isPrefix () const |
bool | isSolo () const |
bool | isConstExtended () const |
unsigned short | getCExtOpNum (void) const |
bool | isNewValue () const |
bool | hasNewValue () const |
const MCOperand & | getNewValue () const |
unsigned | getBitCount (void) const |
![]() | |
MCInst () | |
void | setOpcode (unsigned Op) |
unsigned | getOpcode () const |
void | setLoc (SMLoc loc) |
SMLoc | getLoc () const |
const MCOperand & | getOperand (unsigned i) const |
MCOperand & | getOperand (unsigned i) |
unsigned | getNumOperands () const |
void | addOperand (const MCOperand &Op) |
void | clear () |
size_t | size () |
iterator | begin () |
iterator | end () |
iterator | insert (iterator I, const MCOperand &Op) |
void | print (raw_ostream &OS, const MCAsmInfo *MAI) const |
void | dump () const |
void | dump_pretty (raw_ostream &OS, const MCAsmInfo *MAI=0, const MCInstPrinter *Printer=0, StringRef Separator=" ") const |
Dump the MCInst as prettily as possible using the additional MC structures, if given. Operators are separated by the Separator string. More... | |
Additional Inherited Members | |
![]() | |
typedef SmallVectorImpl < MCOperand >::iterator | iterator |
Definition at line 23 of file HexagonMCInst.h.
|
inlineexplicit |
Definition at line 33 of file HexagonMCInst.h.
|
inline |
Definition at line 35 of file HexagonMCInst.h.
unsigned HexagonMCInst::getBitCount | ( | void | ) | const |
Definition at line 129 of file HexagonMCInst.cpp.
References llvm::HexagonII::ExtentBitsMask, llvm::HexagonII::ExtentBitsPos, and llvm::MCInstrDesc::TSFlags.
unsigned short HexagonMCInst::getCExtOpNum | ( | void | ) | const |
Definition at line 135 of file HexagonMCInst.cpp.
References llvm::HexagonII::ExtendableOpMask, llvm::HexagonII::ExtendableOpPos, and llvm::MCInstrDesc::TSFlags.
Referenced by isConstExtended().
|
inline |
Definition at line 51 of file HexagonMCInst.h.
const MCOperand & HexagonMCInst::getNewValue | ( | ) | const |
Definition at line 69 of file HexagonMCInst.cpp.
References F(), llvm::MCInst::getOperand(), hasNewValue(), isNewValue(), llvm::MCOperand::isReg(), llvm::HexagonII::NewValueOpMask, llvm::HexagonII::NewValueOpPos, and llvm::MCInstrDesc::TSFlags.
unsigned HexagonMCInst::getType | ( | ) | const |
Definition at line 32 of file HexagonMCInst.cpp.
References F(), llvm::MCInstrDesc::TSFlags, llvm::HexagonII::TypeMask, and llvm::HexagonII::TypePos.
Referenced by isCanon(), and isPrefix().
unsigned HexagonMCInst::getUnits | ( | const HexagonTargetMachine * | TM | ) | const |
Definition at line 22 of file HexagonMCInst.cpp.
References llvm::InstrItineraryData::beginStage(), llvm::HexagonTargetMachine::getInstrInfo(), llvm::HexagonTargetMachine::getInstrItineraryData(), and llvm::InstrStage::getUnits().
bool HexagonMCInst::hasNewValue | ( | ) | const |
Definition at line 63 of file HexagonMCInst.cpp.
References F(), llvm::HexagonII::hasNewValueMask, llvm::HexagonII::hasNewValuePos, and llvm::MCInstrDesc::TSFlags.
Referenced by getNewValue().
bool HexagonMCInst::isCanon | ( | ) | const |
Definition at line 39 of file HexagonMCInst.cpp.
References getType(), isPrefix(), llvm::MCInstrDesc::isPseudo(), and llvm::HexagonII::TypeENDLOOP.
bool HexagonMCInst::isConstExtended | ( | void | ) | const |
Definition at line 87 of file HexagonMCInst.cpp.
References getCExtOpNum(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::MCOperand::isExpr(), and llvm::MCOperand::isImm().
Referenced by llvm::HexagonInstPrinter::printExtOperand().
bool HexagonMCInst::isNewValue | ( | ) | const |
Definition at line 57 of file HexagonMCInst.cpp.
References F(), llvm::HexagonII::NewValueMask, llvm::HexagonII::NewValuePos, and llvm::MCInstrDesc::TSFlags.
Referenced by getNewValue().
|
inline |
Definition at line 39 of file HexagonMCInst.h.
Referenced by llvm::HexagonInstPrinter::printInst().
|
inline |
Definition at line 38 of file HexagonMCInst.h.
Referenced by llvm::HexagonInstPrinter::printInst().
bool HexagonMCInst::isPrefix | ( | ) | const |
Definition at line 46 of file HexagonMCInst.cpp.
References getType(), and llvm::HexagonII::TypePREFIX.
Referenced by isCanon().
bool HexagonMCInst::isSolo | ( | ) | const |
Definition at line 51 of file HexagonMCInst.cpp.
References F(), llvm::HexagonII::SoloMask, llvm::HexagonII::SoloPos, and llvm::MCInstrDesc::TSFlags.
|
inline |
Definition at line 42 of file HexagonMCInst.h.
References setPacketEnd(), and setPacketStart().
|
inline |
Definition at line 50 of file HexagonMCInst.h.
Referenced by llvm::HexagonLowerToMC().
|
inline |
Definition at line 41 of file HexagonMCInst.h.
References Y.
Referenced by llvm::HexagonAsmPrinter::EmitInstruction(), and resetPacket().
|
inline |
Definition at line 40 of file HexagonMCInst.h.
References Y.
Referenced by llvm::HexagonAsmPrinter::EmitInstruction(), llvm::HexagonInstPrinter::printInst(), and resetPacket().