Lines Matching refs:MatchableInfo
380 struct MatchableInfo { struct
544 MatchableInfo(const CodeGenInstruction &CGI) in MatchableInfo() function
549 MatchableInfo(std::unique_ptr<const CodeGenInstAlias> Alias) in MatchableInfo() argument
559 MatchableInfo(const MatchableInfo &RHS) in MatchableInfo() function
570 ~MatchableInfo() { in ~MatchableInfo() argument
616 bool operator<(const MatchableInfo &RHS) const { in operator <() argument
659 bool couldMatchAmbiguouslyWith(const MatchableInfo &RHS) const { in couldMatchAmbiguouslyWith() argument
709 const MatchableInfo* MI;
712 static OperandMatchEntry create(const MatchableInfo *mi, ClassInfo *ci, in create()
737 std::vector<std::unique_ptr<MatchableInfo>> Matchables;
776 void buildInstructionOperandReference(MatchableInfo *II, StringRef OpName,
778 void buildAliasOperandReference(MatchableInfo *II, StringRef OpName,
779 MatchableInfo::AsmOperand &Op);
814 LLVM_DUMP_METHOD void MatchableInfo::dump() const { in dump()
850 void MatchableInfo::formTwoOperandAlias(StringRef Constraint) { in formTwoOperandAlias()
896 extractSingletonRegisterForAsmOperand(MatchableInfo::AsmOperand &Op, in extractSingletonRegisterForAsmOperand()
924 void MatchableInfo::initialize(const AsmMatcherInfo &Info, in initialize()
960 for (MatchableInfo::AsmOperand &Op : AsmOperands) { in initialize()
975 void MatchableInfo::addAsmOperand(StringRef Token, bool IsIsolatedToken) { in addAsmOperand()
980 void MatchableInfo::tokenizeAsmString(const AsmMatcherInfo &Info, in tokenizeAsmString()
1064 bool MatchableInfo::validate(StringRef CommentDelimiter, bool IsAlias) const { in validate()
1465 const MatchableInfo::AsmOperand &Op = MI->AsmOperands[i]; in buildOperandMatchInfo()
1535 auto II = std::make_unique<MatchableInfo>(*CGI); in buildInfo()
1565 auto II = std::make_unique<MatchableInfo>(std::move(Alias)); in buildInfo()
1584 std::vector<std::unique_ptr<MatchableInfo>> NewMatchables; in buildInfo()
1590 MatchableInfo::AsmOperand &Op = II->AsmOperands[i]; in buildInfo()
1634 auto AliasII = std::make_unique<MatchableInfo>(*II); in buildInfo()
1685 buildInstructionOperandReference(MatchableInfo *II, in buildInstructionOperandReference()
1690 MatchableInfo::AsmOperand *Op = &II->AsmOperands[AsmOpIdx]; in buildInstructionOperandReference()
1709 MatchableInfo::AsmOperand NewAsmOp(/*IsIsolatedToken=*/true, Token); in buildInstructionOperandReference()
1748 void AsmMatcherInfo::buildAliasOperandReference(MatchableInfo *II, in buildAliasOperandReference()
1750 MatchableInfo::AsmOperand &Op) { in buildAliasOperandReference()
1774 void MatchableInfo::buildInstructionResultOperands() { in buildInstructionResultOperands()
1823 void MatchableInfo::buildAliasResultOperands(bool AliasConstraintsAreChecked) { in buildAliasResultOperands()
1950 std::vector<std::unique_ptr<MatchableInfo>> &Infos, in emitConvertFuncs()
2094 const MatchableInfo::ResOperand &OpInfo = II->ResOperands[i]; in emitConvertFuncs()
2098 case MatchableInfo::ResOperand::RenderAsmOperand: { in emitConvertFuncs()
2100 const MatchableInfo::AsmOperand &Op = in emitConvertFuncs()
2169 case MatchableInfo::ResOperand::TiedOperand: { in emitConvertFuncs()
2193 case MatchableInfo::ResOperand::ImmOperand: { in emitConvertFuncs()
2221 case MatchableInfo::ResOperand::RegOperand: { in emitConvertFuncs()
2897 const MatchableInfo &II = *OMI.MI; in emitCustomOperandParsing()
3218 [](const std::unique_ptr<MatchableInfo> &a, in run()
3219 const std::unique_ptr<MatchableInfo> &b) { return *a < *b; }); in run()
3242 const MatchableInfo &A = **I; in run()
3243 const MatchableInfo &B = **J; in run()
3537 for (const MatchableInfo::AsmOperand &Op : MI->AsmOperands) in run()