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 |
Definition at line 23 of file HexagonMCInst.h.
llvm::HexagonMCInst::HexagonMCInst | ( | ) | [inline, explicit] |
Definition at line 33 of file HexagonMCInst.h.
llvm::HexagonMCInst::HexagonMCInst | ( | const MCInstrDesc & | mcid | ) | [inline] |
Definition at line 35 of file HexagonMCInst.h.
unsigned HexagonMCInst::getBitCount | ( | void | ) | const |
Definition at line 130 of file HexagonMCInst.cpp.
References llvm::HexagonII::ExtentBitsMask, llvm::HexagonII::ExtentBitsPos, and llvm::MCInstrDesc::TSFlags.
unsigned short HexagonMCInst::getCExtOpNum | ( | void | ) | const |
Definition at line 136 of file HexagonMCInst.cpp.
References llvm::HexagonII::ExtendableOpMask, llvm::HexagonII::ExtendableOpPos, and llvm::MCInstrDesc::TSFlags.
Referenced by isConstExtended().
const MCInstrDesc& llvm::HexagonMCInst::getDesc | ( | void | ) | const [inline] |
Definition at line 51 of file HexagonMCInst.h.
const MCOperand & HexagonMCInst::getNewValue | ( | ) | const |
Definition at line 70 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 33 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::HexagonSubtarget::getInstrInfo(), llvm::HexagonSubtarget::getInstrItineraryData(), llvm::HexagonTargetMachine::getSubtargetImpl(), and llvm::InstrStage::getUnits().
bool HexagonMCInst::hasNewValue | ( | ) | const |
Definition at line 64 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 40 of file HexagonMCInst.cpp.
References getType(), isPrefix(), llvm::MCInstrDesc::isPseudo(), and llvm::HexagonII::TypeENDLOOP.
bool HexagonMCInst::isConstExtended | ( | void | ) | const |
Definition at line 88 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 58 of file HexagonMCInst.cpp.
References F(), llvm::HexagonII::NewValueMask, llvm::HexagonII::NewValuePos, and llvm::MCInstrDesc::TSFlags.
Referenced by getNewValue().
bool llvm::HexagonMCInst::isPacketEnd | ( | ) | const [inline] |
Definition at line 39 of file HexagonMCInst.h.
Referenced by llvm::HexagonInstPrinter::printInst().
bool llvm::HexagonMCInst::isPacketStart | ( | ) | const [inline] |
Definition at line 38 of file HexagonMCInst.h.
Referenced by llvm::HexagonInstPrinter::printInst().
bool HexagonMCInst::isPrefix | ( | ) | const |
Definition at line 47 of file HexagonMCInst.cpp.
References getType(), and llvm::HexagonII::TypePREFIX.
Referenced by isCanon().
bool HexagonMCInst::isSolo | ( | ) | const |
Definition at line 52 of file HexagonMCInst.cpp.
References F(), llvm::HexagonII::SoloMask, llvm::HexagonII::SoloPos, and llvm::MCInstrDesc::TSFlags.
void llvm::HexagonMCInst::resetPacket | ( | ) | [inline] |
Definition at line 42 of file HexagonMCInst.h.
References setPacketEnd(), and setPacketStart().
void llvm::HexagonMCInst::setDesc | ( | const MCInstrDesc & | mcid | ) | [inline] |
Definition at line 50 of file HexagonMCInst.h.
Referenced by llvm::HexagonLowerToMC().
void llvm::HexagonMCInst::setPacketEnd | ( | bool | Y | ) | [inline] |
Definition at line 41 of file HexagonMCInst.h.
References Y.
Referenced by llvm::HexagonAsmPrinter::EmitInstruction(), and resetPacket().
void llvm::HexagonMCInst::setPacketStart | ( | bool | Y | ) | [inline] |
Definition at line 40 of file HexagonMCInst.h.
References Y.
Referenced by llvm::HexagonAsmPrinter::EmitInstruction(), llvm::HexagonInstPrinter::printInst(), and resetPacket().