Lines Matching defs:RISCVOperand
60 struct RISCVOperand;
276 std::unique_ptr<RISCVOperand> defaultMaskRegOp() const;
277 std::unique_ptr<RISCVOperand> defaultFRMArgOp() const;
278 std::unique_ptr<RISCVOperand> defaultFRMArgLegacyOp() const;
329 /// RISCVOperand - Instances of this class represent a parsed machine
331 struct RISCVOperand final : public MCParsedAsmOperand {
409 RISCVOperand(KindTy K) : Kind(K) {}
412 RISCVOperand(const RISCVOperand &o) : MCParsedAsmOperand() {
1104 static std::unique_ptr<RISCVOperand> createToken(StringRef Str, SMLoc S) {
1105 auto Op = std::make_unique<RISCVOperand>(KindTy::Token);
1112 static std::unique_ptr<RISCVOperand>
1114 auto Op = std::make_unique<RISCVOperand>(KindTy::Register);
1122 static std::unique_ptr<RISCVOperand> createImm(const MCExpr *Val, SMLoc S,
1124 auto Op = std::make_unique<RISCVOperand>(KindTy::Immediate);
1132 static std::unique_ptr<RISCVOperand> createFPImm(uint64_t Val, SMLoc S) {
1133 auto Op = std::make_unique<RISCVOperand>(KindTy::FPImmediate);
1140 static std::unique_ptr<RISCVOperand> createSysReg(StringRef Str, SMLoc S,
1142 auto Op = std::make_unique<RISCVOperand>(KindTy::SystemRegister);
1151 static std::unique_ptr<RISCVOperand>
1153 auto Op = std::make_unique<RISCVOperand>(KindTy::FRM);
1160 static std::unique_ptr<RISCVOperand> createFenceArg(unsigned Val, SMLoc S) {
1161 auto Op = std::make_unique<RISCVOperand>(KindTy::Fence);
1168 static std::unique_ptr<RISCVOperand> createVType(unsigned VTypeI, SMLoc S) {
1169 auto Op = std::make_unique<RISCVOperand>(KindTy::VType);
1176 static std::unique_ptr<RISCVOperand> createRlist(unsigned RlistEncode,
1178 auto Op = std::make_unique<RISCVOperand>(KindTy::Rlist);
1184 static std::unique_ptr<RISCVOperand> createRegReg(unsigned Reg1No,
1186 auto Op = std::make_unique<RISCVOperand>(KindTy::RegReg);
1194 static std::unique_ptr<RISCVOperand> createSpimm(unsigned Spimm, SMLoc S) {
1195 auto Op = std::make_unique<RISCVOperand>(KindTy::Spimm);
1320 RISCVOperand &Op = static_cast<RISCVOperand &>(AsmOp);
1385 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1422 ((RISCVOperand &)*Operands[0]).getToken(), FBS, 0);
1431 ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1457 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1465 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1475 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1601 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1605 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1609 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1613 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1617 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1621 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1626 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1630 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1634 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1643 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1649 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1659 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[ErrorInfo]).getStartLoc();
1742 Operands.push_back(RISCVOperand::createToken("(", FirstS));
1746 Operands.push_back(RISCVOperand::createReg(RegNo, S, E));
1751 Operands.push_back(RISCVOperand::createToken(")", getLoc()));
1779 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
1797 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
1834 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
1858 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
1898 Operands.push_back(RISCVOperand::createSysReg(Reg.Name, S, Imm));
1904 Operands.push_back(RISCVOperand::createSysReg("", S, Imm));
1929 RISCVOperand::createSysReg(Identifier, S, SysReg->Encoding));
1954 RISCVOperand::createImm(MCConstantExpr::create(30, getContext()), S,
1958 RISCVOperand::createImm(MCConstantExpr::create(31, getContext()), S,
1962 RISCVOperand::createImm(MCConstantExpr::create(1, getContext()), S,
1990 Operands.push_back(RISCVOperand::createFPImm(
2022 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
2049 Operands.push_back(RISCVOperand::createImm(ModExpr, S, E, isRV64()));
2086 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
2102 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
2129 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
2147 Operands.push_back(RISCVOperand::createImm(Res, S, E, isRV64()));
2275 Operands.push_back(RISCVOperand::createVType(VTypeI, S));
2305 Operands.push_back(RISCVOperand::createReg(RegNo, S, E));
2321 Operands.push_back(RISCVOperand::createReg(
2364 Operands.push_back(RISCVOperand::createReg(Pair, S, E));
2380 Operands.push_back(RISCVOperand::createFRMArg(FRM, getLoc()));
2392 Operands.push_back(RISCVOperand::createFenceArg(0, getLoc()));
2435 Operands.push_back(RISCVOperand::createFenceArg(Imm, getLoc()));
2448 Operands.push_back(RISCVOperand::createToken("(", getLoc()));
2455 Operands.push_back(RISCVOperand::createToken(")", getLoc()));
2479 std::unique_ptr<RISCVOperand> OptionalImmOp;
2491 // Create a RISCVOperand for checking later (so the error messages are
2495 RISCVOperand::createImm(MCConstantExpr::create(ImmVal, getContext()),
2545 Operands.push_back(RISCVOperand::createRegReg(Reg, Reg2, getLoc()));
2641 Operands.push_back(RISCVOperand::createRlist(Encode, S));
2653 unsigned RlistVal = static_cast<RISCVOperand *>(Operands[1].get())->Rlist.Val;
2658 Operands.push_back(RISCVOperand::createSpimm(Spimm << 4, S));
2712 Operands.push_back(RISCVOperand::createToken(Name, NameLoc));
3430 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[3]).getStartLoc();
3443 SMLoc ErrorLoc = ((RISCVOperand &)*Operands[3]).getStartLoc();
3451 std::unique_ptr<RISCVOperand> RISCVAsmParser::defaultMaskRegOp() const {
3452 return RISCVOperand::createReg(RISCV::NoRegister, llvm::SMLoc(),
3456 std::unique_ptr<RISCVOperand> RISCVAsmParser::defaultFRMArgOp() const {
3457 return RISCVOperand::createFRMArg(RISCVFPRndMode::RoundingMode::DYN,
3461 std::unique_ptr<RISCVOperand> RISCVAsmParser::defaultFRMArgLegacyOp() const {
3462 return RISCVOperand::createFRMArg(RISCVFPRndMode::RoundingMode::RNE,