Lines Matching refs:SparcOperand

56 class SparcOperand;
105 ParseStatus parseSparcAsmOperand(std::unique_ptr<SparcOperand> &Operand,
201 class SparcOperand : public MCParsedAsmOperand { class
258 SparcOperand(KindTy K) : Kind(K) {} in SparcOperand() function in __anonebada3920211::SparcOperand
461 static std::unique_ptr<SparcOperand> CreateToken(StringRef Str, SMLoc S) { in CreateToken()
462 auto Op = std::make_unique<SparcOperand>(k_Token); in CreateToken()
470 static std::unique_ptr<SparcOperand> CreateReg(unsigned RegNum, unsigned Kind, in CreateReg()
472 auto Op = std::make_unique<SparcOperand>(k_Register); in CreateReg()
474 Op->Reg.Kind = (SparcOperand::RegisterKind)Kind; in CreateReg()
480 static std::unique_ptr<SparcOperand> CreateImm(const MCExpr *Val, SMLoc S, in CreateImm()
482 auto Op = std::make_unique<SparcOperand>(k_Immediate); in CreateImm()
489 static std::unique_ptr<SparcOperand> CreateASITag(unsigned Val, SMLoc S, in CreateASITag()
491 auto Op = std::make_unique<SparcOperand>(k_ASITag); in CreateASITag()
498 static std::unique_ptr<SparcOperand> CreatePrefetchTag(unsigned Val, SMLoc S, in CreatePrefetchTag()
500 auto Op = std::make_unique<SparcOperand>(k_PrefetchTag); in CreatePrefetchTag()
507 static bool MorphToIntPairReg(SparcOperand &Op) { in MorphToIntPairReg()
526 static bool MorphToDoubleReg(SparcOperand &Op) { in MorphToDoubleReg()
537 static bool MorphToQuadReg(SparcOperand &Op) { in MorphToQuadReg()
560 static bool MorphToCoprocPairReg(SparcOperand &Op) { in MorphToCoprocPairReg()
573 static std::unique_ptr<SparcOperand>
574 MorphToMEMrr(unsigned Base, std::unique_ptr<SparcOperand> Op) { in MorphToMEMrr()
583 static std::unique_ptr<SparcOperand>
585 auto Op = std::make_unique<SparcOperand>(k_MemoryReg); in CreateMEMr()
594 static std::unique_ptr<SparcOperand>
595 MorphToMEMri(unsigned Base, std::unique_ptr<SparcOperand> Op) { in MorphToMEMri()
834 ErrorLoc = ((SparcOperand &)*Operands[ErrorInfo]).getStartLoc(); in MatchAndEmitInstruction()
863 unsigned RegKind = SparcOperand::rk_None; in tryParseRegister()
902 Operands.push_back(SparcOperand::CreateToken(Name, NameLoc)); in ParseInstruction()
923 Operands.push_back(SparcOperand::CreateToken("+", Parser.getTok().getLoc())); in ParseInstruction()
963 std::unique_ptr<SparcOperand> LHS; in parseMEMOperand()
969 Operands.push_back(SparcOperand::MorphToMEMri(Sparc::G0, std::move(LHS))); in parseMEMOperand()
982 std::unique_ptr<SparcOperand> RHS; in parseMEMOperand()
992 ? SparcOperand::MorphToMEMri(LHS->getReg(), std::move(RHS)) in parseMEMOperand()
993 : SparcOperand::MorphToMEMrr(LHS->getReg(), std::move(RHS))); in parseMEMOperand()
998 Operands.push_back(SparcOperand::CreateMEMr(LHS->getReg(), S, E)); in parseMEMOperand()
1022 Operands.push_back(SparcOperand::CreateImm(Expr, S, E)); in parseShiftAmtImm()
1103 Operands.push_back(SparcOperand::CreateImm(Val, S, E)); in parseTailRelocSym()
1112 std::unique_ptr<SparcOperand> Mask; in parseMembarTag()
1145 Operands.push_back(SparcOperand::CreateImm(EVal, S, E)); in parseMembarTag()
1164 Operands.push_back(SparcOperand::CreateASITag(ASIVal, S, E)); in parseASITag()
1183 Operands.push_back(SparcOperand::CreateASITag(ASIVal, S, E)); in parseASITag()
1202 Operands.push_back(SparcOperand::CreatePrefetchTag(PrefetchVal, S, E)); in parsePrefetchTag()
1218 Operands.push_back(SparcOperand::CreatePrefetchTag(PrefetchVal, S, E)); in parsePrefetchTag()
1245 Operands.push_back(SparcOperand::CreateImm(DestExpr, S, E)); in parseCallTarget()
1262 Operands.push_back(SparcOperand::CreateToken("[", in parseOperand()
1280 Operands.push_back(SparcOperand::CreateReg(Reg, RegKind, S, E)); in parseOperand()
1292 Operands.push_back(SparcOperand::CreateToken("]", in parseOperand()
1313 SparcOperand &OldMemOp = (SparcOperand &)*Operands[Operands.size() - 2]; in parseOperand()
1318 Operands[Operands.size() - 2] = SparcOperand::MorphToMEMri( in parseOperand()
1320 SparcOperand::CreateImm(MCConstantExpr::create(0, getContext()), in parseOperand()
1329 Operands.push_back(SparcOperand::CreateToken("%asi", S)); in parseOperand()
1345 std::unique_ptr<SparcOperand> Op; in parseOperand()
1358 SparcAsmParser::parseSparcAsmOperand(std::unique_ptr<SparcOperand> &Op, in parseSparcAsmOperand()
1376 Op = SparcOperand::CreateToken("%xcc", S); in parseSparcAsmOperand()
1378 Op = SparcOperand::CreateReg(Reg, RegKind, S, E); in parseSparcAsmOperand()
1383 Op = SparcOperand::CreateImm(EVal, S, E); in parseSparcAsmOperand()
1409 Op = SparcOperand::CreateImm(EVal, S, E); in parseSparcAsmOperand()
1425 Operands.push_back(SparcOperand::CreateToken(modName, in parseBranchModifiers()
1444 RegKind = SparcOperand::rk_None; in matchRegisterName()
1461 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1466 RegKind = SparcOperand::rk_IntReg; in matchRegisterName()
1470 RegKind = SparcOperand::rk_FloatReg; in matchRegisterName()
1474 RegKind = SparcOperand::rk_CoprocReg; in matchRegisterName()
1480 RegKind = SparcOperand::rk_IntReg; in matchRegisterName()
1488 RegKind = SparcOperand::rk_FloatReg; in matchRegisterName()
1491 RegKind = SparcOperand::rk_DoubleReg; in matchRegisterName()
1501 RegKind = SparcOperand::rk_CoprocReg; in matchRegisterName()
1506 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1517 RegKind = SparcOperand::rk_IntReg; in matchRegisterName()
1523 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1530 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1534 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1538 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1542 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1546 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1550 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1554 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1558 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1562 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1566 RegKind = SparcOperand::rk_Special; in matchRegisterName()
1691 SparcOperand &Op = (SparcOperand &)GOp; in validateTargetOperandClass()
1696 if (!Op.isFloatReg() || SparcOperand::MorphToDoubleReg(Op)) in validateTargetOperandClass()
1700 if (SparcOperand::MorphToQuadReg(Op)) in validateTargetOperandClass()
1706 if (SparcOperand::MorphToIntPairReg(Op)) in validateTargetOperandClass()
1710 if (SparcOperand::MorphToCoprocPairReg(Op)) in validateTargetOperandClass()