Lines Matching defs:ARMAsmParser
1 //===- ARMAsmParser.cpp - Parse ARM assembly to MCInst instructions -------===//
237 class ARMAsmParser : public MCTargetAsmParser {
688 ARMAsmParser(const MCSubtargetInfo &STI, MCAsmParser &Parser,
813 ARMAsmParser *Parser;
965 ARMOperand(KindTy K, ARMAsmParser &Parser) : Kind(K), Parser(&Parser) {}
3635 ARMAsmParser &Parser) {
3644 CreateCondCode(ARMCC::CondCodes CC, SMLoc S, ARMAsmParser &Parser) {
3653 ARMAsmParser &Parser) {
3662 ARMAsmParser &Parser) {
3671 ARMAsmParser &Parser) {
3680 CreateCoprocOption(unsigned Val, SMLoc S, SMLoc E, ARMAsmParser &Parser) {
3689 ARMAsmParser &Parser) {
3698 ARMAsmParser &Parser) {
3708 ARMAsmParser &Parser) {
3719 SMLoc E, ARMAsmParser &Parser) {
3733 ARMAsmParser &Parser) {
3745 ARMAsmParser &Parser) {
3755 CreateRotImm(unsigned Imm, SMLoc S, SMLoc E, ARMAsmParser &Parser) {
3765 ARMAsmParser &Parser) {
3776 ARMAsmParser &Parser) {
3787 ARMAsmParser &Parser) {
3798 SMLoc StartLoc, SMLoc EndLoc, ARMAsmParser &Parser) {
3836 SMLoc E, ARMAsmParser &Parser) {
3848 SMLoc S, SMLoc E, ARMAsmParser &Parser) {
3861 ARMAsmParser &Parser) {
3874 ARMAsmParser &Parser) {
3883 SMLoc E, ARMAsmParser &Parser) {
3894 bool isNegative, SMLoc S, SMLoc E, ARMAsmParser &Parser,
3912 unsigned ShiftImm, SMLoc S, SMLoc E, ARMAsmParser &Parser) {
3924 CreateMemBarrierOpt(ARM_MB::MemBOpt Opt, SMLoc S, ARMAsmParser &Parser) {
3934 ARMAsmParser &Parser) {
3944 ARMAsmParser &Parser) {
3953 CreateProcIFlags(ARM_PROC::IFlags IFlags, SMLoc S, ARMAsmParser &Parser) {
3962 ARMAsmParser &Parser) {
3971 ARMAsmParser &Parser) {
4205 bool ARMAsmParser::parseRegister(MCRegister &Reg, SMLoc &StartLoc,
4215 ParseStatus ARMAsmParser::tryParseRegister(MCRegister &Reg, SMLoc &StartLoc,
4225 MCRegister ARMAsmParser::tryParseRegister(bool AllowOutOfBoundReg) {
4278 std::optional<ARM_AM::ShiftOpc> ARMAsmParser::tryParseShiftToken() {
4300 int ARMAsmParser::tryParseShiftRegister(OperandVector &Operands) {
4390 bool ARMAsmParser::tryParseRegisterWithWriteBack(OperandVector &Operands) {
4485 ParseStatus ARMAsmParser::parseITCondCode(OperandVector &Operands) {
4505 ParseStatus ARMAsmParser::parseCoprocNumOperand(OperandVector &Operands) {
4526 ParseStatus ARMAsmParser::parseCoprocRegOperand(OperandVector &Operands) {
4544 ParseStatus ARMAsmParser::parseCoprocOptionOperand(OperandVector &Operands) {
4614 bool ARMAsmParser::parseRegisterList(OperandVector &Operands, bool EnforceOrder,
4808 ParseStatus ARMAsmParser::parseVectorLane(VectorLaneTy &LaneKind,
4852 ParseStatus ARMAsmParser::parseVectorList(OperandVector &Operands) {
5074 ParseStatus ARMAsmParser::parseMemBarrierOptOperand(OperandVector &Operands) {
5141 ARMAsmParser::parseTraceSyncBarrierOptOperand(OperandVector &Operands) {
5161 ARMAsmParser::parseInstSyncBarrierOptOperand(OperandVector &Operands) {
5206 ParseStatus ARMAsmParser::parseProcIFlagsOperand(OperandVector &Operands) {
5241 ParseStatus ARMAsmParser::parseMSRMaskOperand(OperandVector &Operands) {
5342 ParseStatus ARMAsmParser::parseBankedRegOperand(OperandVector &Operands) {
5367 ParseStatus ARMAsmParser::parsePKHImm(OperandVector &Operands,
5407 ParseStatus ARMAsmParser::parseSetEndImm(OperandVector &Operands) {
5431 ParseStatus ARMAsmParser::parseShifterImm(OperandVector &Operands) {
5486 ParseStatus ARMAsmParser::parseRotImm(OperandVector &Operands) {
5524 ParseStatus ARMAsmParser::parseModImm(OperandVector &Operands) {
5631 ParseStatus ARMAsmParser::parseBitfield(OperandVector &Operands) {
5681 ParseStatus ARMAsmParser::parsePostIdxReg(OperandVector &Operands) {
5729 ParseStatus ARMAsmParser::parseAM3Offset(OperandVector &Operands) {
5820 void ARMAsmParser::cvtThumbMultiply(MCInst &Inst,
5869 void ARMAsmParser::cvtThumbBranches(MCInst &Inst,
5926 void ARMAsmParser::cvtMVEVMOVQtoDReg(
5957 bool ARMAsmParser::parseMemory(OperandVector &Operands) {
6151 bool ARMAsmParser::parseMemRegOffsetShift(ARM_AM::ShiftOpc &St,
6214 ParseStatus ARMAsmParser::parseFPImm(OperandVector &Operands) {
6304 bool ARMAsmParser::parseOperand(OperandVector &Operands, StringRef Mnemonic) {
6460 bool ARMAsmParser::parseImmExpr(int64_t &Out) {
6475 bool ARMAsmParser::parsePrefix(ARMMCExpr::VariantKind &RefKind) {
6569 StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic, StringRef ExtraToken,
6699 void ARMAsmParser::getMnemonicAcceptInfo(StringRef Mnemonic,
6786 void ARMAsmParser::tryConvertingToTwoOperandForm(
6892 bool ARMAsmParser::shouldOmitVectorPredicateOperand(
6951 void ARMAsmParser::fixupGNULDRDAlias(StringRef Mnemonic,
7000 bool ARMAsmParser::CDEConvertDualRegOperand(StringRef Mnemonic,
7084 bool ARMAsmParser::parseInstruction(ParseInstructionInfo &Info, StringRef Name,
7537 bool ARMAsmParser::validatetLDMRegList(const MCInst &Inst,
7556 bool ARMAsmParser::validatetSTMRegList(const MCInst &Inst,
7578 bool ARMAsmParser::validateLDRDSTRD(MCInst &Inst, const OperandVector &Operands,
7662 bool ARMAsmParser::validateInstruction(MCInst &Inst,
8916 bool ARMAsmParser::processInstruction(MCInst &Inst,
11150 ARMAsmParser::checkEarlyTargetMatchPredicate(MCInst &Inst,
11169 unsigned ARMAsmParser::checkTargetMatchPredicate(MCInst &Inst) {
11304 bool ARMAsmParser::isITBlockTerminator(MCInst &Inst) const {
11321 unsigned ARMAsmParser::MatchInstruction(OperandVector &Operands, MCInst &Inst,
11410 bool ARMAsmParser::matchAndEmitInstruction(SMLoc IDLoc, unsigned &Opcode,
11488 bool ARMAsmParser::ParseDirective(AsmToken DirectiveID) {
11607 bool ARMAsmParser::parseLiteralValues(unsigned Size, SMLoc L) {
11620 bool ARMAsmParser::parseDirectiveThumb(SMLoc L) {
11634 bool ARMAsmParser::parseDirectiveARM(SMLoc L) {
11646 ARMAsmParser::getVariantKindForName(StringRef Name) const {
11676 void ARMAsmParser::doBeforeLabelEmit(MCSymbol *Symbol, SMLoc IDLoc) {
11682 void ARMAsmParser::onLabelParsed(MCSymbol *Symbol) {
11691 bool ARMAsmParser::parseDirectiveThumbFunc(SMLoc L) {
11727 bool ARMAsmParser::parseDirectiveSyntax(SMLoc L) {
11751 bool ARMAsmParser::parseDirectiveCode(SMLoc L) {
11787 bool ARMAsmParser::parseDirectiveReq(StringRef Name, SMLoc L) {
11806 bool ARMAsmParser::parseDirectiveUnreq(SMLoc L) {
11818 void ARMAsmParser::FixModeAfterArchChange(bool WasThumb, SMLoc Loc) {
11842 bool ARMAsmParser::parseDirectiveArch(SMLoc L) {
11864 bool ARMAsmParser::parseDirectiveEabiAttr(SMLoc L) {
11962 bool ARMAsmParser::parseDirectiveCPU(SMLoc L) {
11982 bool ARMAsmParser::parseDirectiveFPU(SMLoc L) {
12002 bool ARMAsmParser::parseDirectiveFnStart(SMLoc L) {
12023 bool ARMAsmParser::parseDirectiveFnEnd(SMLoc L) {
12039 bool ARMAsmParser::parseDirectiveCantUnwind(SMLoc L) {
12065 bool ARMAsmParser::parseDirectivePersonality(SMLoc L) {
12106 bool ARMAsmParser::parseDirectiveHandlerData(SMLoc L) {
12126 bool ARMAsmParser::parseDirectiveSetFP(SMLoc L) {
12181 bool ARMAsmParser::parseDirectivePad(SMLoc L) {
12214 bool ARMAsmParser::parseDirectiveRegSave(SMLoc L, bool IsVector) {
12241 bool ARMAsmParser::parseDirectiveInst(SMLoc Loc, char Suffix) {
12309 bool ARMAsmParser::parseDirectiveLtorg(SMLoc L) {
12316 bool ARMAsmParser::parseDirectiveEven(SMLoc L) {
12338 bool ARMAsmParser::parseDirectivePersonalityIndex(SMLoc L) {
12382 bool ARMAsmParser::parseDirectiveUnwindRaw(SMLoc L) {
12434 bool ARMAsmParser::parseDirectiveTLSDescSeq(SMLoc L) {
12454 bool ARMAsmParser::parseDirectiveMovSP(SMLoc L) {
12497 bool ARMAsmParser::parseDirectiveObjectArch(SMLoc L) {
12519 bool ARMAsmParser::parseDirectiveAlign(SMLoc L) {
12537 bool ARMAsmParser::parseDirectiveThumbSet(SMLoc L) {
12559 bool ARMAsmParser::parseDirectiveSEHAllocStack(SMLoc L, bool Wide) {
12570 bool ARMAsmParser::parseDirectiveSEHSaveRegs(SMLoc L, bool Wide) {
12599 bool ARMAsmParser::parseDirectiveSEHSaveSP(SMLoc L) {
12612 bool ARMAsmParser::parseDirectiveSEHSaveFRegs(SMLoc L) {
12653 bool ARMAsmParser::parseDirectiveSEHSaveLR(SMLoc L) {
12664 bool ARMAsmParser::parseDirectiveSEHPrologEnd(SMLoc L, bool Fragment) {
12672 bool ARMAsmParser::parseDirectiveSEHNop(SMLoc L, bool Wide) {
12680 bool ARMAsmParser::parseDirectiveSEHEpilogStart(SMLoc L, bool Condition) {
12700 bool ARMAsmParser::parseDirectiveSEHEpilogEnd(SMLoc L) {
12707 bool ARMAsmParser::parseDirectiveSEHCustom(SMLoc L) {
12727 RegisterMCAsmParser<ARMAsmParser> X(getTheARMLETarget());
12728 RegisterMCAsmParser<ARMAsmParser> Y(getTheARMBETarget());
12729 RegisterMCAsmParser<ARMAsmParser> A(getTheThumbLETarget());
12730 RegisterMCAsmParser<ARMAsmParser> B(getTheThumbBETarget());
12743 ARMAsmParser::getCustomOperandDiag(ARMMatchResultTy MatchError) {
12767 ARMAsmParser::FilterNearMisses(SmallVectorImpl<NearMissInfo> &NearMissesIn,
12933 void ARMAsmParser::ReportNearMisses(SmallVectorImpl<NearMissInfo> &NearMisses,
12955 bool ARMAsmParser::enableArchExtFeature(StringRef Name, SMLoc &ExtLoc) {
13037 bool ARMAsmParser::parseDirectiveArchExtension(SMLoc L) {
13064 unsigned ARMAsmParser::validateTargetOperandClass(MCParsedAsmOperand &AsmOp,
13109 bool ARMAsmParser::isMnemonicVPTPredicable(StringRef Mnemonic,
13153 std::unique_ptr<ARMOperand> ARMAsmParser::defaultCondCodeOp() {
13157 std::unique_ptr<ARMOperand> ARMAsmParser::defaultCCOutOp() {
13161 std::unique_ptr<ARMOperand> ARMAsmParser::defaultVPTPredOp() {