• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/Lanai/AsmParser/

Lines Matching defs:LanaiOperand

46 struct LanaiOperand;
50 std::unique_ptr<LanaiOperand> parseRegister(bool RestoreOnFailure = false);
52 std::unique_ptr<LanaiOperand> parseImmediate();
54 std::unique_ptr<LanaiOperand> parseIdentifier();
103 // LanaiOperand - Instances of this class represented a parsed machine
105 struct LanaiOperand : public MCParsedAsmOperand {
144 explicit LanaiOperand(KindTy Kind) : MCParsedAsmOperand(), Kind(Kind) {}
585 static std::unique_ptr<LanaiOperand> CreateToken(StringRef Str, SMLoc Start) {
586 auto Op = std::make_unique<LanaiOperand>(TOKEN);
594 static std::unique_ptr<LanaiOperand> createReg(unsigned RegNum, SMLoc Start,
596 auto Op = std::make_unique<LanaiOperand>(REGISTER);
603 static std::unique_ptr<LanaiOperand> createImm(const MCExpr *Value,
605 auto Op = std::make_unique<LanaiOperand>(IMMEDIATE);
612 static std::unique_ptr<LanaiOperand>
613 MorphToMemImm(std::unique_ptr<LanaiOperand> Op) {
623 static std::unique_ptr<LanaiOperand>
624 MorphToMemRegReg(unsigned BaseReg, std::unique_ptr<LanaiOperand> Op,
635 static std::unique_ptr<LanaiOperand>
636 MorphToMemRegImm(unsigned BaseReg, std::unique_ptr<LanaiOperand> Op,
675 ErrorLoc = ((LanaiOperand &)*Operands[ErrorInfo]).getStartLoc();
692 std::unique_ptr<LanaiOperand>
712 return LanaiOperand::createReg(RegNum, Start, End);
724 std::unique_ptr<LanaiOperand> Op = parseRegister(/*RestoreOnFailure=*/false);
736 std::unique_ptr<LanaiOperand> Op = parseRegister(/*RestoreOnFailure=*/true);
743 std::unique_ptr<LanaiOperand> LanaiAsmParser::parseIdentifier() {
798 return LanaiOperand::createImm(Res, Start, End);
801 std::unique_ptr<LanaiOperand> LanaiAsmParser::parseImmediate() {
814 return LanaiOperand::createImm(ExprVal, Start, End);
866 bool shouldBeSls(const LanaiOperand &Op) {
905 Type = static_cast<LanaiOperand *>(Operands[0].get())->getToken();
914 std::unique_ptr<LanaiOperand> Op = parseRegister();
931 std::unique_ptr<LanaiOperand> Offset = nullptr;
947 Operands.push_back(LanaiOperand::MorphToMemImm(std::move(Op)));
955 Operands.push_back(LanaiOperand::MorphToMemRegImm(
981 Offset = LanaiOperand::createImm(OffsetConstExpr, Start, End);
1015 ? LanaiOperand::MorphToMemRegImm(BaseReg, std::move(Offset), AluOp)
1016 : LanaiOperand::MorphToMemRegReg(BaseReg, std::move(Offset), AluOp));
1038 std::unique_ptr<LanaiOperand> Op = parseRegister();
1081 Operands->push_back(LanaiOperand::CreateToken(Mnemonic, NameLoc));
1082 Operands->push_back(LanaiOperand::createImm(
1085 Operands->push_back(LanaiOperand::CreateToken(".r", NameLoc));
1110 Operands->push_back(LanaiOperand::CreateToken(Mnemonic, NameLoc));
1111 Operands->push_back(LanaiOperand::createImm(
1117 Operands->push_back(LanaiOperand::CreateToken(Mnemonic, NameLoc));
1119 Operands->push_back(LanaiOperand::CreateToken(".r", NameLoc));
1150 if (LanaiOperand *PossibleAluOp =
1151 static_cast<LanaiOperand *>(Operands[PossibleAluOpIdx].get()))
1163 return static_cast<const LanaiOperand &>(op).isReg();
1171 static_cast<const LanaiOperand &>(*Operands[0]).getToken())
1202 Operands.insert(Operands.begin(), LanaiOperand::CreateToken("s", NameLoc));
1204 LanaiOperand::createImm(
1215 Operands.insert(Operands.begin(), LanaiOperand::CreateToken("bt", NameLoc));
1239 LanaiOperand::createImm(