Lines Matching refs:AArch64Operand
339 class AArch64Operand : public MCParsedAsmOperand { class
520 AArch64Operand(KindTy K, MCContext &Ctx) : Kind(K), Ctx(Ctx) {} in AArch64Operand() function in __anonc2b64ba80111::AArch64Operand
522 AArch64Operand(const AArch64Operand &o) : MCParsedAsmOperand(), Ctx(o.Ctx) { in AArch64Operand() function in __anonc2b64ba80111::AArch64Operand
2222 static std::unique_ptr<AArch64Operand>
2224 auto Op = std::make_unique<AArch64Operand>(k_Token, Ctx); in CreateToken()
2233 static std::unique_ptr<AArch64Operand>
2239 auto Op = std::make_unique<AArch64Operand>(k_Register, Ctx); in CreateReg()
2252 static std::unique_ptr<AArch64Operand>
2268 static std::unique_ptr<AArch64Operand>
2272 auto Op = std::make_unique<AArch64Operand>(k_VectorList, Ctx); in CreateVectorList()
2284 static std::unique_ptr<AArch64Operand>
2286 auto Op = std::make_unique<AArch64Operand>(k_VectorIndex, Ctx); in CreateVectorIndex()
2293 static std::unique_ptr<AArch64Operand>
2295 auto Op = std::make_unique<AArch64Operand>(k_MatrixTileList, Ctx); in CreateMatrixTileList()
2332 static std::unique_ptr<AArch64Operand> CreateImm(const MCExpr *Val, SMLoc S, in CreateImm()
2334 auto Op = std::make_unique<AArch64Operand>(k_Immediate, Ctx); in CreateImm()
2341 static std::unique_ptr<AArch64Operand> CreateShiftedImm(const MCExpr *Val, in CreateShiftedImm()
2345 auto Op = std::make_unique<AArch64Operand>(k_ShiftedImm, Ctx); in CreateShiftedImm()
2353 static std::unique_ptr<AArch64Operand> CreateImmRange(unsigned First, in CreateImmRange()
2357 auto Op = std::make_unique<AArch64Operand>(k_ImmRange, Ctx); in CreateImmRange()
2364 static std::unique_ptr<AArch64Operand>
2366 auto Op = std::make_unique<AArch64Operand>(k_CondCode, Ctx); in CreateCondCode()
2373 static std::unique_ptr<AArch64Operand>
2375 auto Op = std::make_unique<AArch64Operand>(k_FPImm, Ctx); in CreateFPImm()
2383 static std::unique_ptr<AArch64Operand> CreateBarrier(unsigned Val, in CreateBarrier()
2388 auto Op = std::make_unique<AArch64Operand>(k_Barrier, Ctx); in CreateBarrier()
2398 static std::unique_ptr<AArch64Operand> CreateSysReg(StringRef Str, SMLoc S, in CreateSysReg()
2403 auto Op = std::make_unique<AArch64Operand>(k_SysReg, Ctx); in CreateSysReg()
2414 static std::unique_ptr<AArch64Operand> CreateSysCR(unsigned Val, SMLoc S, in CreateSysCR()
2416 auto Op = std::make_unique<AArch64Operand>(k_SysCR, Ctx); in CreateSysCR()
2423 static std::unique_ptr<AArch64Operand> CreatePrefetch(unsigned Val, in CreatePrefetch()
2427 auto Op = std::make_unique<AArch64Operand>(k_Prefetch, Ctx); in CreatePrefetch()
2436 static std::unique_ptr<AArch64Operand> CreatePSBHint(unsigned Val, in CreatePSBHint()
2440 auto Op = std::make_unique<AArch64Operand>(k_PSBHint, Ctx); in CreatePSBHint()
2449 static std::unique_ptr<AArch64Operand> CreateBTIHint(unsigned Val, in CreateBTIHint()
2453 auto Op = std::make_unique<AArch64Operand>(k_BTIHint, Ctx); in CreateBTIHint()
2462 static std::unique_ptr<AArch64Operand>
2465 auto Op = std::make_unique<AArch64Operand>(k_MatrixRegister, Ctx); in CreateMatrixRegister()
2474 static std::unique_ptr<AArch64Operand>
2476 auto Op = std::make_unique<AArch64Operand>(k_SVCR, Ctx); in CreateSVCR()
2485 static std::unique_ptr<AArch64Operand>
2488 auto Op = std::make_unique<AArch64Operand>(k_ShiftExtend, Ctx); in CreateShiftExtend()
2500 void AArch64Operand::print(raw_ostream &OS) const { in print()
3020 AArch64Operand::CreateSysCR(CRNum, S, getLoc(), getContext())); in tryParseSysCROperand()
3047 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParseRPRFMOperand()
3059 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParseRPRFMOperand()
3107 Operands.push_back(AArch64Operand::CreatePrefetch(prfop, PRFM.value_or(""), in tryParsePrefetch()
3119 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParsePrefetch()
3136 Operands.push_back(AArch64Operand::CreatePSBHint( in tryParsePSBHint()
3169 Operands.push_back(AArch64Operand::CreateReg( in tryParseSyspXzrPair()
3186 Operands.push_back(AArch64Operand::CreateBTIHint( in tryParseBTIHint()
3236 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in tryParseAdrpLabel()
3272 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in tryParseAdrLabel()
3300 AArch64Operand::CreateFPImm(F, true, S, getContext())); in tryParseFPImm()
3313 Operands.push_back(AArch64Operand::CreateToken("#0", S, getContext())); in tryParseFPImm()
3314 Operands.push_back(AArch64Operand::CreateToken(".0", S, getContext())); in tryParseFPImm()
3316 Operands.push_back(AArch64Operand::CreateFPImm( in tryParseFPImm()
3346 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3355 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3357 AArch64Operand::CreateToken(VecGroup, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3383 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3387 Operands.push_back(AArch64Operand::CreateShiftedImm(Imm, ShiftAmount, S, in tryParseImmWithOptionalShift()
3462 AArch64Operand::CreateCondCode(CC, S, getLoc(), getContext())); in parseCondCode()
3481 AArch64Operand::CreateSVCR(PStateImm, Tok.getString(), S, getContext())); in tryParseSVCR()
3504 Operands.push_back(AArch64Operand::CreateMatrixRegister( in tryParseMatrixRegister()
3542 Operands.push_back(AArch64Operand::CreateMatrixRegister( in tryParseMatrixRegister()
3596 AArch64Operand::CreateShiftExtend(ShOp, 0, false, S, E, getContext())); in tryParseOptionalShiftExtend()
3616 Operands.push_back(AArch64Operand::CreateShiftExtend( in tryParseOptionalShiftExtend()
3768 AArch64Operand::CreateImm(Expr, S, getLoc(), getContext())); in createSysAlias()
3770 AArch64Operand::CreateSysCR(Cn, S, getLoc(), getContext())); in createSysAlias()
3772 AArch64Operand::CreateSysCR(Cm, S, getLoc(), getContext())); in createSysAlias()
3775 AArch64Operand::CreateImm(Expr, S, getLoc(), getContext())); in createSysAlias()
3786 Operands.push_back(AArch64Operand::CreateToken("sys", NameLoc, getContext())); in parseSysAlias()
3891 AArch64Operand::CreateToken("sysp", NameLoc, getContext())); in parseSyspAlias()
3968 Operands.push_back(AArch64Operand::CreateBarrier(Value, DB ? DB->Name : "", in tryParseBarrierOperand()
3995 Operands.push_back(AArch64Operand::CreateBarrier( in tryParseBarrierOperand()
4026 Operands.push_back(AArch64Operand::CreateBarrier(DB->Encoding, DB->Name, in tryParseBarriernXSOperand()
4042 AArch64Operand::CreateBarrier(DB->Encoding, Tok.getString(), getLoc(), in tryParseBarriernXSOperand()
4077 AArch64Operand::CreateSysReg(Tok.getString(), getLoc(), MRSReg, MSRReg, in tryParseSysReg()
4103 AArch64Operand::CreateVectorReg(Reg, RegKind::NeonVector, ElementWidth, in tryParseNeonVectorRegister()
4109 Operands.push_back(AArch64Operand::CreateToken(Kind, S, getContext())); in tryParseNeonVectorRegister()
4129 Operands.push_back(AArch64Operand::CreateVectorIndex(MCE->getValue(), SIdx, in tryParseVectorIndex()
4187 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEPredicateVector()
4213 Operands.push_back(AArch64Operand::CreateToken("/", getLoc(), getContext())); in tryParseSVEPredicateVector()
4227 Operands.push_back(AArch64Operand::CreateToken(ZM, getLoc(), getContext())); in tryParseSVEPredicateVector()
4360 Operands.push_back(AArch64Operand::CreateMatrixTileList( in tryParseMatrixTileList()
4372 Operands.push_back(AArch64Operand::CreateMatrixTileList( in tryParseMatrixTileList()
4391 AArch64Operand::ComputeRegsForAlias(FirstReg, DRegs, ElementWidth); in tryParseMatrixTileList()
4414 AArch64Operand::ComputeRegsForAlias(Reg, DRegs, ElementWidth); in tryParseMatrixTileList()
4428 AArch64Operand::CreateMatrixTileList(RegMask, S, getLoc(), getContext())); in tryParseMatrixTileList()
4550 Operands.push_back(AArch64Operand::CreateVectorList( in tryParseVectorList()
4575 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPR64sp0Operand()
4590 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPR64sp0Operand()
4605 Operands.push_back(AArch64Operand::CreateReg( in tryParseZTOperand()
4612 AArch64Operand::CreateToken("[", getLoc(), getContext())); in tryParseZTOperand()
4619 Operands.push_back(AArch64Operand::CreateImm( in tryParseZTOperand()
4628 AArch64Operand::CreateToken("]", getLoc(), getContext())); in tryParseZTOperand()
4644 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPROperand()
4658 auto Ext = static_cast<AArch64Operand*>(ExtOpnd.back().get()); in tryParseGPROperand()
4659 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPROperand()
4681 AArch64Operand::CreateToken("mul", getLoc(), getContext())); in parseOptionalMulOperand()
4686 AArch64Operand::CreateToken("vl", getLoc(), getContext())); in parseOptionalMulOperand()
4699 Operands.push_back(AArch64Operand::CreateImm( in parseOptionalMulOperand()
4740 AArch64Operand::CreateToken(Keyword, Tok.getLoc(), getContext())); in parseKeywordOperand()
4775 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in parseOperand()
4780 AArch64Operand::CreateToken("[", getLoc(), getContext())); in parseOperand()
4792 AArch64Operand::CreateToken("{", getLoc(), getContext())); in parseOperand()
4804 AArch64Operand::CreateToken(VecGroup, getLoc(), getContext())); in parseOperand()
4839 Operands.push_back(AArch64Operand::CreateImm(IdVal, S, E, getContext())); in parseOperand()
4875 Operands.push_back(AArch64Operand::CreateToken("#0", S, getContext())); in parseOperand()
4876 Operands.push_back(AArch64Operand::CreateToken(".0", S, getContext())); in parseOperand()
4885 Operands.push_back(AArch64Operand::CreateImm(ImmVal, S, E, getContext())); in parseOperand()
4898 !static_cast<AArch64Operand &>(*Operands[1]).isScalarReg()) in parseOperand()
4916 Operands[0] = AArch64Operand::CreateToken("movz", Loc, Ctx); in parseOperand()
4917 Operands.push_back(AArch64Operand::CreateImm( in parseOperand()
4920 Operands.push_back(AArch64Operand::CreateShiftExtend(AArch64_AM::LSL, in parseOperand()
4932 Operands.push_back(AArch64Operand::CreateImm(CPLoc, S, E, Ctx)); in parseOperand()
4999 auto &AOp1 = static_cast<const AArch64Operand&>(Op1); in areEqualRegs()
5000 auto &AOp2 = static_cast<const AArch64Operand&>(Op2); in areEqualRegs()
5079 Operands.push_back(AArch64Operand::CreateToken(Head, NameLoc, getContext())); in ParseInstruction()
5098 Operands.push_back(AArch64Operand::CreateToken(".", SuffixLoc, getContext(), in ParseInstruction()
5101 AArch64Operand::CreateCondCode(CC, NameLoc, NameLoc, getContext())); in ParseInstruction()
5111 Operands.push_back(AArch64Operand::CreateToken( in ParseInstruction()
5161 AArch64Operand::CreateToken("]", getLoc(), getContext())); in ParseInstruction()
5164 AArch64Operand::CreateToken("!", getLoc(), getContext())); in ParseInstruction()
5167 AArch64Operand::CreateToken("}", getLoc(), getContext())); in ParseInstruction()
5665 auto &Op = static_cast<const AArch64Operand &>(*Operands[ErrorInfo]); in showMatchError()
5911 ((AArch64Operand &)*Operands[0]).getToken(), in showMatchError()
6129 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[0]); in MatchAndEmitInstruction()
6136 AArch64Operand &Op2 = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6137 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6157 AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), getContext()); in MatchAndEmitInstruction()
6158 Operands.push_back(AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6160 Operands[3] = AArch64Operand::CreateImm(NewOp3, Op3.getStartLoc(), in MatchAndEmitInstruction()
6166 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6167 AArch64Operand LSBOp = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6168 AArch64Operand WidthOp = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6207 AArch64Operand::CreateToken("bfm", Op.getStartLoc(), getContext()); in MatchAndEmitInstruction()
6208 Operands[2] = AArch64Operand::CreateReg( in MatchAndEmitInstruction()
6211 Operands[3] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6214 AArch64Operand::CreateImm(ImmSExpr, WidthOp.getStartLoc(), in MatchAndEmitInstruction()
6222 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6223 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6224 AArch64Operand &Op4 = static_cast<AArch64Operand &>(*Operands[4]); in MatchAndEmitInstruction()
6264 Operands[3] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6266 Operands[4] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6269 Operands[0] = AArch64Operand::CreateToken("bfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6272 Operands[0] = AArch64Operand::CreateToken("sbfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6275 Operands[0] = AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6286 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6287 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6288 AArch64Operand &Op4 = static_cast<AArch64Operand &>(*Operands[4]); in MatchAndEmitInstruction()
6320 Operands[4] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6323 Operands[0] = AArch64Operand::CreateToken("bfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6326 Operands[0] = AArch64Operand::CreateToken("sbfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6329 Operands[0] = AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6344 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6345 AArch64Operand &Op2 = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6346 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6357 AArch64Operand::CreateToken(".16b", IDLoc, getContext()); in MatchAndEmitInstruction()
6368 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6371 Operands[2] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6378 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6384 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6387 Operands[2] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6395 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6401 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6404 Operands[1] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6436 Operands.size() > 1 && ((AArch64Operand &)*Operands[1]).isToken() && in MatchAndEmitInstruction()
6437 ((AArch64Operand &)*Operands[1]).isTokenSuffix()) { in MatchAndEmitInstruction()
6481 ErrorLoc = ((AArch64Operand &)*Operands[ErrorInfo]).getStartLoc(); in MatchAndEmitInstruction()
6487 if (((AArch64Operand &)*Operands[ErrorInfo]).isToken() && in MatchAndEmitInstruction()
6488 ((AArch64Operand &)*Operands[ErrorInfo]).isTokenSuffix()) in MatchAndEmitInstruction()
6703 SMLoc ErrorLoc = ((AArch64Operand &)*Operands[ErrorInfo]).getStartLoc(); in MatchAndEmitInstruction()
7717 AArch64Operand &Op = static_cast<AArch64Operand &>(AsmOp); in validateTargetOperandClass()
7842 Operands.push_back(AArch64Operand::CreateReg(Pair, RegKind::Scalar, S, in tryParseGPRSeqPair()
7872 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEDataVector()
7890 auto Ext = static_cast<AArch64Operand *>(ExtOpnd.back().get()); in tryParseSVEDataVector()
7891 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEDataVector()
7936 AArch64Operand::CreateImm(MCConstantExpr::create(Pattern, getContext()), in tryParseSVEPattern()
7958 AArch64Operand::CreateImm(MCConstantExpr::create(Pattern, getContext()), in tryParseSVEVecLenSpecifier()
7981 AArch64Operand::CreateReg(X8Reg, RegKind::Scalar, SS, getLoc(), ctx)); in tryParseGPR64x8()
8014 AArch64Operand::CreateImmRange(ImmFVal, ImmLVal, S, E, getContext())); in tryParseImmRange()