Lines Matching refs:AArch64Operand
343 class AArch64Operand : public MCParsedAsmOperand { class
524 AArch64Operand(KindTy K, MCContext &Ctx) : Kind(K), Ctx(Ctx) {} in AArch64Operand() function in __anon730428320111::AArch64Operand
526 AArch64Operand(const AArch64Operand &o) : MCParsedAsmOperand(), Ctx(o.Ctx) { in AArch64Operand() function in __anon730428320111::AArch64Operand
2251 static std::unique_ptr<AArch64Operand>
2253 auto Op = std::make_unique<AArch64Operand>(k_Token, Ctx); in CreateToken()
2262 static std::unique_ptr<AArch64Operand>
2268 auto Op = std::make_unique<AArch64Operand>(k_Register, Ctx); in CreateReg()
2281 static std::unique_ptr<AArch64Operand>
2297 static std::unique_ptr<AArch64Operand>
2301 auto Op = std::make_unique<AArch64Operand>(k_VectorList, Ctx); in CreateVectorList()
2313 static std::unique_ptr<AArch64Operand>
2315 auto Op = std::make_unique<AArch64Operand>(k_VectorIndex, Ctx); in CreateVectorIndex()
2322 static std::unique_ptr<AArch64Operand>
2324 auto Op = std::make_unique<AArch64Operand>(k_MatrixTileList, Ctx); in CreateMatrixTileList()
2361 static std::unique_ptr<AArch64Operand> CreateImm(const MCExpr *Val, SMLoc S, in CreateImm()
2363 auto Op = std::make_unique<AArch64Operand>(k_Immediate, Ctx); in CreateImm()
2370 static std::unique_ptr<AArch64Operand> CreateShiftedImm(const MCExpr *Val, in CreateShiftedImm()
2374 auto Op = std::make_unique<AArch64Operand>(k_ShiftedImm, Ctx); in CreateShiftedImm()
2382 static std::unique_ptr<AArch64Operand> CreateImmRange(unsigned First, in CreateImmRange()
2386 auto Op = std::make_unique<AArch64Operand>(k_ImmRange, Ctx); in CreateImmRange()
2393 static std::unique_ptr<AArch64Operand>
2395 auto Op = std::make_unique<AArch64Operand>(k_CondCode, Ctx); in CreateCondCode()
2402 static std::unique_ptr<AArch64Operand>
2404 auto Op = std::make_unique<AArch64Operand>(k_FPImm, Ctx); in CreateFPImm()
2412 static std::unique_ptr<AArch64Operand> CreateBarrier(unsigned Val, in CreateBarrier()
2417 auto Op = std::make_unique<AArch64Operand>(k_Barrier, Ctx); in CreateBarrier()
2427 static std::unique_ptr<AArch64Operand> CreateSysReg(StringRef Str, SMLoc S, in CreateSysReg()
2432 auto Op = std::make_unique<AArch64Operand>(k_SysReg, Ctx); in CreateSysReg()
2443 static std::unique_ptr<AArch64Operand> CreateSysCR(unsigned Val, SMLoc S, in CreateSysCR()
2445 auto Op = std::make_unique<AArch64Operand>(k_SysCR, Ctx); in CreateSysCR()
2452 static std::unique_ptr<AArch64Operand> CreatePrefetch(unsigned Val, in CreatePrefetch()
2456 auto Op = std::make_unique<AArch64Operand>(k_Prefetch, Ctx); in CreatePrefetch()
2465 static std::unique_ptr<AArch64Operand> CreatePSBHint(unsigned Val, in CreatePSBHint()
2469 auto Op = std::make_unique<AArch64Operand>(k_PSBHint, Ctx); in CreatePSBHint()
2478 static std::unique_ptr<AArch64Operand> CreateBTIHint(unsigned Val, in CreateBTIHint()
2482 auto Op = std::make_unique<AArch64Operand>(k_BTIHint, Ctx); in CreateBTIHint()
2491 static std::unique_ptr<AArch64Operand>
2494 auto Op = std::make_unique<AArch64Operand>(k_MatrixRegister, Ctx); in CreateMatrixRegister()
2503 static std::unique_ptr<AArch64Operand>
2505 auto Op = std::make_unique<AArch64Operand>(k_SVCR, Ctx); in CreateSVCR()
2514 static std::unique_ptr<AArch64Operand>
2517 auto Op = std::make_unique<AArch64Operand>(k_ShiftExtend, Ctx); in CreateShiftExtend()
2529 void AArch64Operand::print(raw_ostream &OS) const { in print()
3049 AArch64Operand::CreateSysCR(CRNum, S, getLoc(), getContext())); in tryParseSysCROperand()
3076 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParseRPRFMOperand()
3088 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParseRPRFMOperand()
3136 Operands.push_back(AArch64Operand::CreatePrefetch(prfop, PRFM.value_or(""), in tryParsePrefetch()
3148 Operands.push_back(AArch64Operand::CreatePrefetch( in tryParsePrefetch()
3165 Operands.push_back(AArch64Operand::CreatePSBHint( in tryParsePSBHint()
3198 Operands.push_back(AArch64Operand::CreateReg( in tryParseSyspXzrPair()
3215 Operands.push_back(AArch64Operand::CreateBTIHint( in tryParseBTIHint()
3265 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in tryParseAdrpLabel()
3301 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in tryParseAdrLabel()
3329 AArch64Operand::CreateFPImm(F, true, S, getContext())); in tryParseFPImm()
3342 Operands.push_back(AArch64Operand::CreateToken("#0", S, getContext())); in tryParseFPImm()
3343 Operands.push_back(AArch64Operand::CreateToken(".0", S, getContext())); in tryParseFPImm()
3345 Operands.push_back(AArch64Operand::CreateFPImm( in tryParseFPImm()
3375 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3384 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3386 AArch64Operand::CreateToken(VecGroup, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3412 AArch64Operand::CreateImm(Imm, S, getLoc(), getContext())); in tryParseImmWithOptionalShift()
3416 Operands.push_back(AArch64Operand::CreateShiftedImm(Imm, ShiftAmount, S, in tryParseImmWithOptionalShift()
3491 AArch64Operand::CreateCondCode(CC, S, getLoc(), getContext())); in parseCondCode()
3510 AArch64Operand::CreateSVCR(PStateImm, Tok.getString(), S, getContext())); in tryParseSVCR()
3533 Operands.push_back(AArch64Operand::CreateMatrixRegister( in tryParseMatrixRegister()
3571 Operands.push_back(AArch64Operand::CreateMatrixRegister( in tryParseMatrixRegister()
3625 AArch64Operand::CreateShiftExtend(ShOp, 0, false, S, E, getContext())); in tryParseOptionalShiftExtend()
3645 Operands.push_back(AArch64Operand::CreateShiftExtend( in tryParseOptionalShiftExtend()
3796 AArch64Operand::CreateImm(Expr, S, getLoc(), getContext())); in createSysAlias()
3798 AArch64Operand::CreateSysCR(Cn, S, getLoc(), getContext())); in createSysAlias()
3800 AArch64Operand::CreateSysCR(Cm, S, getLoc(), getContext())); in createSysAlias()
3803 AArch64Operand::CreateImm(Expr, S, getLoc(), getContext())); in createSysAlias()
3814 Operands.push_back(AArch64Operand::CreateToken("sys", NameLoc, getContext())); in parseSysAlias()
3919 AArch64Operand::CreateToken("sysp", NameLoc, getContext())); in parseSyspAlias()
3996 Operands.push_back(AArch64Operand::CreateBarrier(Value, DB ? DB->Name : "", in tryParseBarrierOperand()
4023 Operands.push_back(AArch64Operand::CreateBarrier( in tryParseBarrierOperand()
4054 Operands.push_back(AArch64Operand::CreateBarrier(DB->Encoding, DB->Name, in tryParseBarriernXSOperand()
4070 AArch64Operand::CreateBarrier(DB->Encoding, Tok.getString(), getLoc(), in tryParseBarriernXSOperand()
4105 AArch64Operand::CreateSysReg(Tok.getString(), getLoc(), MRSReg, MSRReg, in tryParseSysReg()
4131 AArch64Operand::CreateVectorReg(Reg, RegKind::NeonVector, ElementWidth, in tryParseNeonVectorRegister()
4137 Operands.push_back(AArch64Operand::CreateToken(Kind, S, getContext())); in tryParseNeonVectorRegister()
4157 Operands.push_back(AArch64Operand::CreateVectorIndex(MCE->getValue(), SIdx, in tryParseVectorIndex()
4224 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEPredicateVector()
4250 Operands.push_back(AArch64Operand::CreateToken("/", getLoc(), getContext())); in tryParseSVEPredicateVector()
4264 Operands.push_back(AArch64Operand::CreateToken(ZM, getLoc(), getContext())); in tryParseSVEPredicateVector()
4397 Operands.push_back(AArch64Operand::CreateMatrixTileList( in tryParseMatrixTileList()
4409 Operands.push_back(AArch64Operand::CreateMatrixTileList( in tryParseMatrixTileList()
4428 AArch64Operand::ComputeRegsForAlias(FirstReg, DRegs, ElementWidth); in tryParseMatrixTileList()
4451 AArch64Operand::ComputeRegsForAlias(Reg, DRegs, ElementWidth); in tryParseMatrixTileList()
4465 AArch64Operand::CreateMatrixTileList(RegMask, S, getLoc(), getContext())); in tryParseMatrixTileList()
4587 Operands.push_back(AArch64Operand::CreateVectorList( in tryParseVectorList()
4612 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPR64sp0Operand()
4627 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPR64sp0Operand()
4642 Operands.push_back(AArch64Operand::CreateReg( in tryParseZTOperand()
4649 AArch64Operand::CreateToken("[", getLoc(), getContext())); in tryParseZTOperand()
4656 Operands.push_back(AArch64Operand::CreateImm( in tryParseZTOperand()
4665 AArch64Operand::CreateToken("]", getLoc(), getContext())); in tryParseZTOperand()
4681 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPROperand()
4695 auto Ext = static_cast<AArch64Operand*>(ExtOpnd.back().get()); in tryParseGPROperand()
4696 Operands.push_back(AArch64Operand::CreateReg( in tryParseGPROperand()
4718 AArch64Operand::CreateToken("mul", getLoc(), getContext())); in parseOptionalMulOperand()
4723 AArch64Operand::CreateToken("vl", getLoc(), getContext())); in parseOptionalMulOperand()
4736 Operands.push_back(AArch64Operand::CreateImm( in parseOptionalMulOperand()
4777 AArch64Operand::CreateToken(Keyword, Tok.getLoc(), getContext())); in parseKeywordOperand()
4821 Operands.push_back(AArch64Operand::CreateImm(Expr, S, E, getContext())); in parseOperand()
4826 AArch64Operand::CreateToken("[", getLoc(), getContext())); in parseOperand()
4838 AArch64Operand::CreateToken("{", getLoc(), getContext())); in parseOperand()
4850 AArch64Operand::CreateToken(VecGroup, getLoc(), getContext())); in parseOperand()
4895 Operands.push_back(AArch64Operand::CreateImm(IdVal, S, E, getContext())); in parseOperand()
4931 Operands.push_back(AArch64Operand::CreateToken("#0", S, getContext())); in parseOperand()
4932 Operands.push_back(AArch64Operand::CreateToken(".0", S, getContext())); in parseOperand()
4941 Operands.push_back(AArch64Operand::CreateImm(ImmVal, S, E, getContext())); in parseOperand()
4956 !static_cast<AArch64Operand &>(*Operands[1]).isScalarReg()) in parseOperand()
4974 Operands[0] = AArch64Operand::CreateToken("movz", Loc, Ctx); in parseOperand()
4975 Operands.push_back(AArch64Operand::CreateImm( in parseOperand()
4978 Operands.push_back(AArch64Operand::CreateShiftExtend(AArch64_AM::LSL, in parseOperand()
4990 Operands.push_back(AArch64Operand::CreateImm(CPLoc, S, E, Ctx)); in parseOperand()
5057 auto &AOp1 = static_cast<const AArch64Operand&>(Op1); in areEqualRegs()
5058 auto &AOp2 = static_cast<const AArch64Operand&>(Op2); in areEqualRegs()
5137 Operands.push_back(AArch64Operand::CreateToken(Head, NameLoc, getContext())); in ParseInstruction()
5156 Operands.push_back(AArch64Operand::CreateToken(".", SuffixLoc, getContext(), in ParseInstruction()
5159 AArch64Operand::CreateCondCode(CC, NameLoc, NameLoc, getContext())); in ParseInstruction()
5169 Operands.push_back(AArch64Operand::CreateToken( in ParseInstruction()
5219 AArch64Operand::CreateToken("]", getLoc(), getContext())); in ParseInstruction()
5222 AArch64Operand::CreateToken("!", getLoc(), getContext())); in ParseInstruction()
5225 AArch64Operand::CreateToken("}", getLoc(), getContext())); in ParseInstruction()
5748 auto &Op = static_cast<const AArch64Operand &>(*Operands[ErrorInfo]); in showMatchError()
5994 ((AArch64Operand &)*Operands[0]).getToken(), in showMatchError()
6213 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[0]); in MatchAndEmitInstruction()
6220 AArch64Operand &Op2 = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6221 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6241 AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), getContext()); in MatchAndEmitInstruction()
6242 Operands.push_back(AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6244 Operands[3] = AArch64Operand::CreateImm(NewOp3, Op3.getStartLoc(), in MatchAndEmitInstruction()
6250 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6251 AArch64Operand LSBOp = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6252 AArch64Operand WidthOp = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6291 AArch64Operand::CreateToken("bfm", Op.getStartLoc(), getContext()); in MatchAndEmitInstruction()
6292 Operands[2] = AArch64Operand::CreateReg( in MatchAndEmitInstruction()
6295 Operands[3] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6298 AArch64Operand::CreateImm(ImmSExpr, WidthOp.getStartLoc(), in MatchAndEmitInstruction()
6306 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6307 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6308 AArch64Operand &Op4 = static_cast<AArch64Operand &>(*Operands[4]); in MatchAndEmitInstruction()
6348 Operands[3] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6350 Operands[4] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6353 Operands[0] = AArch64Operand::CreateToken("bfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6356 Operands[0] = AArch64Operand::CreateToken("sbfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6359 Operands[0] = AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6370 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6371 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6372 AArch64Operand &Op4 = static_cast<AArch64Operand &>(*Operands[4]); in MatchAndEmitInstruction()
6404 Operands[4] = AArch64Operand::CreateImm( in MatchAndEmitInstruction()
6407 Operands[0] = AArch64Operand::CreateToken("bfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6410 Operands[0] = AArch64Operand::CreateToken("sbfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6413 Operands[0] = AArch64Operand::CreateToken("ubfm", Op.getStartLoc(), in MatchAndEmitInstruction()
6428 AArch64Operand &Op1 = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6429 AArch64Operand &Op2 = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6430 AArch64Operand &Op3 = static_cast<AArch64Operand &>(*Operands[3]); in MatchAndEmitInstruction()
6441 AArch64Operand::CreateToken(".16b", IDLoc, getContext()); in MatchAndEmitInstruction()
6452 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6455 Operands[2] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6462 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6468 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[2]); in MatchAndEmitInstruction()
6471 Operands[2] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6479 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6485 AArch64Operand &Op = static_cast<AArch64Operand &>(*Operands[1]); in MatchAndEmitInstruction()
6488 Operands[1] = AArch64Operand::CreateReg(Reg, RegKind::Scalar, in MatchAndEmitInstruction()
6520 Operands.size() > 1 && ((AArch64Operand &)*Operands[1]).isToken() && in MatchAndEmitInstruction()
6521 ((AArch64Operand &)*Operands[1]).isTokenSuffix()) { in MatchAndEmitInstruction()
6565 ErrorLoc = ((AArch64Operand &)*Operands[ErrorInfo]).getStartLoc(); in MatchAndEmitInstruction()
6571 if (((AArch64Operand &)*Operands[ErrorInfo]).isToken() && in MatchAndEmitInstruction()
6572 ((AArch64Operand &)*Operands[ErrorInfo]).isTokenSuffix()) in MatchAndEmitInstruction()
6790 SMLoc ErrorLoc = ((AArch64Operand &)*Operands[ErrorInfo]).getStartLoc(); in MatchAndEmitInstruction()
7804 AArch64Operand &Op = static_cast<AArch64Operand &>(AsmOp); in validateTargetOperandClass()
7929 Operands.push_back(AArch64Operand::CreateReg(Pair, RegKind::Scalar, S, in tryParseGPRSeqPair()
7959 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEDataVector()
7977 auto Ext = static_cast<AArch64Operand *>(ExtOpnd.back().get()); in tryParseSVEDataVector()
7978 Operands.push_back(AArch64Operand::CreateVectorReg( in tryParseSVEDataVector()
8023 AArch64Operand::CreateImm(MCConstantExpr::create(Pattern, getContext()), in tryParseSVEPattern()
8045 AArch64Operand::CreateImm(MCConstantExpr::create(Pattern, getContext()), in tryParseSVEVecLenSpecifier()
8068 AArch64Operand::CreateReg(X8Reg, RegKind::Scalar, SS, getLoc(), ctx)); in tryParseGPR64x8()
8101 AArch64Operand::CreateImmRange(ImmFVal, ImmLVal, S, E, getContext())); in tryParseImmRange()