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

Lines Matching refs:VEOperand

39 class VEOperand;
75 OperandMatchResultTy parseVEAsmOperand(std::unique_ptr<VEOperand> &Operand);
140 /// VEOperand - Instances of this class represent a parsed VE machine
142 class VEOperand : public MCParsedAsmOperand {
208 VEOperand(KindTy K) : MCParsedAsmOperand(), Kind(K) {}
569 static std::unique_ptr<VEOperand> CreateToken(StringRef Str, SMLoc S) {
570 auto Op = std::make_unique<VEOperand>(k_Token);
578 static std::unique_ptr<VEOperand> CreateReg(unsigned RegNum, SMLoc S,
580 auto Op = std::make_unique<VEOperand>(k_Register);
587 static std::unique_ptr<VEOperand> CreateImm(const MCExpr *Val, SMLoc S,
589 auto Op = std::make_unique<VEOperand>(k_Immediate);
596 static std::unique_ptr<VEOperand> CreateCCOp(unsigned CCVal, SMLoc S,
598 auto Op = std::make_unique<VEOperand>(k_CCOp);
605 static std::unique_ptr<VEOperand> CreateRDOp(unsigned RDVal, SMLoc S,
607 auto Op = std::make_unique<VEOperand>(k_RDOp);
614 static std::unique_ptr<VEOperand> CreateMImm(const MCExpr *Val, bool Flag,
616 auto Op = std::make_unique<VEOperand>(k_MImmOp);
624 static bool MorphToI32Reg(VEOperand &Op) {
633 static bool MorphToF32Reg(VEOperand &Op) {
642 static bool MorphToF128Reg(VEOperand &Op) {
651 static bool MorphToMISCReg(VEOperand &Op) {
663 static std::unique_ptr<VEOperand>
664 MorphToMEMri(unsigned Base, std::unique_ptr<VEOperand> Op) {
674 static std::unique_ptr<VEOperand>
675 MorphToMEMzi(std::unique_ptr<VEOperand> Op) {
685 static std::unique_ptr<VEOperand>
686 MorphToMEMrri(unsigned Base, unsigned Index, std::unique_ptr<VEOperand> Op) {
696 static std::unique_ptr<VEOperand>
698 std::unique_ptr<VEOperand> Op) {
708 static std::unique_ptr<VEOperand>
709 MorphToMEMzri(unsigned Index, std::unique_ptr<VEOperand> Op) {
719 static std::unique_ptr<VEOperand>
720 MorphToMEMzii(const MCExpr *Index, std::unique_ptr<VEOperand> Op) {
756 ErrorLoc = ((VEOperand &)*Operands[ErrorInfo]).getStartLoc();
838 Operands->push_back(VEOperand::CreateToken(Name, NameLoc));
842 Operands->push_back(VEOperand::CreateCCOp(CondCode, CondLoc, SuffixLoc));
845 Operands->push_back(VEOperand::CreateToken(SuffixStr, SuffixLoc));
847 Operands->push_back(VEOperand::CreateToken(Name, NameLoc));
862 Operands->push_back(VEOperand::CreateToken(Name, NameLoc));
869 VEOperand::CreateRDOp(RoundingMode, SuffixLoc, SuffixEnd));
871 Operands->push_back(VEOperand::CreateToken(Name, NameLoc));
906 Operands->push_back(VEOperand::CreateToken(Mnemonic, NameLoc));
1129 std::unique_ptr<VEOperand> Offset;
1140 Offset = VEOperand::CreateImm(EVal, S, E);
1149 VEOperand::CreateImm(MCConstantExpr::create(0, getContext()), S, E);
1158 Operands.push_back(VEOperand::MorphToMEMzii(
1196 IndexValue ? VEOperand::MorphToMEMzii(IndexValue, std::move(Offset))
1197 : VEOperand::MorphToMEMzri(IndexReg, std::move(Offset)));
1215 ? VEOperand::MorphToMEMrii(BaseReg, IndexValue, std::move(Offset))
1216 : VEOperand::MorphToMEMrri(BaseReg, IndexReg, std::move(Offset)));
1236 std::unique_ptr<VEOperand> Offset;
1247 Offset = VEOperand::CreateImm(EVal, S, E);
1257 VEOperand::CreateImm(MCConstantExpr::create(0, getContext()), S, E);
1263 VEOperand::CreateImm(MCConstantExpr::create(0, getContext()), S, E);
1274 ? VEOperand::MorphToMEMri(BaseReg, std::move(Offset))
1275 : VEOperand::MorphToMEMzi(std::move(Offset)));
1306 ? VEOperand::MorphToMEMri(BaseReg, std::move(Offset))
1307 : VEOperand::MorphToMEMzi(std::move(Offset)));
1349 VEOperand::CreateMImm(EVal, Suffix == "0", Tok1.getLoc(), EndLoc));
1369 std::unique_ptr<VEOperand> Op;
1389 VEAsmParser::parseVEAsmOperand(std::unique_ptr<VEOperand> &Op) {
1403 Op = VEOperand::CreateReg(RegNo, S, E);
1411 Op = VEOperand::CreateImm(EVal, S, E);
1428 VEOperand &Op = (VEOperand &)GOp;
1437 if (Op.isReg() && VEOperand::MorphToF32Reg(Op))
1441 if (Op.isReg() && VEOperand::MorphToI32Reg(Op))
1445 if (Op.isReg() && VEOperand::MorphToF128Reg(Op))
1449 if (Op.isImm() && VEOperand::MorphToMISCReg(Op))