LLVM
8.0.1
|
Check for a valid bundle. More...
#include "Target/Hexagon/MCTargetDesc/HexagonMCChecker.h"
Public Member Functions | |
HexagonMCChecker (MCContext &Context, MCInstrInfo const &MCII, MCSubtargetInfo const &STI, MCInst &mcb, const MCRegisterInfo &ri, bool ReportErrors=true) | |
HexagonMCChecker (HexagonMCChecker const &Check, MCSubtargetInfo const &STI, bool CopyReportErrors) | |
bool | check (bool FullCheck=true) |
void | reportErrorRegisters (unsigned Register) |
void | reportErrorNewValue (unsigned Register) |
void | reportError (SMLoc Loc, Twine const &Msg) |
void | reportNote (SMLoc Loc, Twine const &Msg) |
void | reportError (Twine const &Msg) |
void | reportWarning (Twine const &Msg) |
void | reportBranchErrors () |
Check for a valid bundle.
Definition at line 35 of file HexagonMCChecker.h.
|
explicit |
Definition at line 193 of file HexagonMCChecker.cpp.
|
explicit |
Definition at line 201 of file HexagonMCChecker.cpp.
Definition at line 207 of file HexagonMCChecker.cpp.
Referenced by llvm::HexagonMCInstrInfo::canonicalizePacket(), and LLVMInitializeHexagonDisassembler().
void HexagonMCChecker::reportBranchErrors | ( | ) |
Definition at line 302 of file HexagonMCChecker.cpp.
References llvm::HexagonII::AbsoluteSet, assert(), llvm::MCID::Branch, llvm::HexagonMCInstrInfo::bundleInstructions(), llvm::HexagonMCInstrInfo::bundleSize(), llvm::HexagonShuffler::check(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::count(), llvm::StringRef::empty(), llvm::HexagonMCInstrInfo::getAddrMode(), llvm::HexagonMCInstrInfo::getDesc(), llvm::MCInst::getLoc(), llvm::MCRegisterInfo::getName(), llvm::HexagonMCInstrInfo::getNewValueOperand(), llvm::MCInstrDesc::getNumDefs(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), llvm::HexagonMCInstrInfo::getType(), llvm::HexagonMCInstrInfo::hasTmpDst(), HEXAGON_PACKET_SIZE, I, llvm::MCInstrDesc::isBranch(), llvm::MCInstrDesc::isCall(), llvm::HexagonMCInstrInfo::isCofMax1(), llvm::HexagonMCInstrInfo::isCofRelax1(), llvm::HexagonMCInstrInfo::isCofRelax2(), llvm::HexagonMCInstrInfo::isCVINew(), llvm::HexagonMCInstrInfo::isDuplex(), llvm::HexagonMCInstrInfo::isFloat(), llvm::HexagonMCInstrInfo::isImmext(), llvm::HexagonMCInstrInfo::isInnerLoop(), llvm::HexagonMCInstrInfo::isNewValue(), llvm::HexagonMCInstrInfo::isOuterLoop(), llvm::MCOperand::isReg(), llvm::MCInstrDesc::isReturn(), llvm::HexagonMCInstrInfo::isSolo(), llvm::MCRegisterInfo::isSubRegister(), llvm::MCRegAliasIterator::isValid(), llvm::MCInstrDesc::mayLoad(), llvm::MCInstrDesc::mayStore(), Mode, N, llvm::MCInstrDesc::OpInfo, llvm::HexagonII::PostInc, llvm::HexagonMCInstrInfo::PredicateInfo::PredicatedTrue, llvm::HexagonMCInstrInfo::predicateInfo(), llvm::SmallVectorTemplateBase< T >::push_back(), llvm::MCOperandInfo::RegClass, Register, llvm::HexagonMCInstrInfo::PredicateInfo::Register, RelaxNVChecks, reportError(), reportErrorNewValue(), reportErrorRegisters(), reportNote(), reportWarning(), llvm::SmallVectorBase::size(), llvm::size(), llvm::HexagonII::TypeCVI_HIST, and llvm::HexagonII::TypeNCJ.
Definition at line 717 of file HexagonMCChecker.cpp.
References llvm::MCContext::reportError().
Referenced by isNeitherAnorX(), reportBranchErrors(), reportError(), reportErrorNewValue(), and reportErrorRegisters().
Definition at line 713 of file HexagonMCChecker.cpp.
References llvm::MCInst::getLoc(), and reportError().
void HexagonMCChecker::reportErrorNewValue | ( | unsigned | Register | ) |
Definition at line 707 of file HexagonMCChecker.cpp.
References llvm::MCRegisterInfo::getName(), and reportError().
Referenced by reportBranchErrors().
void HexagonMCChecker::reportErrorRegisters | ( | unsigned | Register | ) |
Definition at line 702 of file HexagonMCChecker.cpp.
References llvm::MCRegisterInfo::getName(), and reportError().
Referenced by reportBranchErrors().
void HexagonMCChecker::reportNote | ( | SMLoc | Loc, |
llvm::Twine const & | Msg | ||
) |
Definition at line 722 of file HexagonMCChecker.cpp.
References llvm::SourceMgr::DK_Note, llvm::MCContext::getSourceManager(), and llvm::SourceMgr::PrintMessage().
Referenced by reportBranchErrors().
Definition at line 730 of file HexagonMCChecker.cpp.
References llvm::SourceMgr::DK_Warning, llvm::MCInst::getLoc(), llvm::MCContext::getSourceManager(), and llvm::SourceMgr::PrintMessage().
Referenced by reportBranchErrors().