Lines Matching refs:InsnMatcher

906   unsigned getInsnVarID(InstructionMatcher &InsnMatcher) const;
928 void reserveInsnMatcherForMutation(InstructionMatcher *InsnMatcher) { in reserveInsnMatcherForMutation() argument
929 bool R = MutatableInsns.erase(InsnMatcher); in reserveInsnMatcherForMutation()
2461 InstructionMatcher &InsnMatcher = *Matchers.front(); in getFirstConditionAsRootType() local
2462 if (!InsnMatcher.predicates_empty()) in getFirstConditionAsRootType()
2464 dyn_cast<LLTOperandMatcher>(&**InsnMatcher.predicates_begin())) in getFirstConditionAsRootType()
2481 std::unique_ptr<InstructionMatcher> InsnMatcher; member in __anoncee47b830111::InstructionOperandMatcher
2488 InsnMatcher(new InstructionMatcher(Rule, SymbolicName, NumOpsCheck)) {} in InstructionOperandMatcher()
2494 InstructionMatcher &getInsnMatcher() const { return *InsnMatcher; } in getInsnMatcher()
2497 const unsigned NewInsnVarID = InsnMatcher->getInsnVarID(); in emitCaptureOpcodes()
2510 InsnMatcher->emitPredicateOpcodes(Table, Rule); in emitPredicateOpcodes()
2521 if (InsnMatcher->isHigherPriorityThan(*BP->InsnMatcher)) in isHigherPriorityThan()
2721 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes() local
2722 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
2752 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes() local
2753 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
2996 InstructionMatcher &InsnMatcher = Rule.getInstructionMatcher(SymbolicName); in emitRenderOpcodes() local
2997 unsigned OldInsnVarID = Rule.getInsnVarID(InsnMatcher); in emitRenderOpcodes()
3306 unsigned RuleMatcher::getInsnVarID(InstructionMatcher &InsnMatcher) const { in getInsnVarID()
3307 const auto &I = InsnVariableIDs.find(&InsnMatcher); in getInsnVarID()
3617 InstructionMatcher &InsnMatcher,
3621 Error importChildMatcher(RuleMatcher &Rule, InstructionMatcher &InsnMatcher,
3627 RuleMatcher &M, InstructionMatcher &InsnMatcher,
3709 InstructionMatcher &InsnMatcher, bool &HasAddedMatcher);
3833 InstructionMatcher &InsnMatcher, bool &HasAddedMatcher) { in addBuiltinPredicates() argument
3846 InsnMatcher.addPredicate<MemoryAddressSpacePredicateMatcher>( in addBuiltinPredicates()
3848 return InsnMatcher; in addBuiltinPredicates()
3854 InsnMatcher.addPredicate<MemoryAlignmentPredicateMatcher>(0, MinAlign); in addBuiltinPredicates()
3855 return InsnMatcher; in addBuiltinPredicates()
3861 InsnMatcher.addPredicate<MemoryVsLLTSizePredicateMatcher>( in addBuiltinPredicates()
3863 return InsnMatcher; in addBuiltinPredicates()
3866 InsnMatcher.addPredicate<MemoryVsLLTSizePredicateMatcher>( in addBuiltinPredicates()
3868 return InsnMatcher; in addBuiltinPredicates()
3879 InsnMatcher.addPredicate<MemorySizePredicateMatcher>(0, *MemSizeInBits / in addBuiltinPredicates()
3882 InsnMatcher.addPredicate<MemoryVsLLTSizePredicateMatcher>( in addBuiltinPredicates()
3885 return InsnMatcher; in addBuiltinPredicates()
3890 InsnMatcher.addPredicate<MemoryVsLLTSizePredicateMatcher>( in addBuiltinPredicates()
3898 return InsnMatcher; in addBuiltinPredicates()
3903 return InsnMatcher; in addBuiltinPredicates()
3907 return InsnMatcher; in addBuiltinPredicates()
3915 InsnMatcher.addPredicate<MemorySizePredicateMatcher>(0, in addBuiltinPredicates()
3917 return InsnMatcher; in addBuiltinPredicates()
3924 return InsnMatcher; in addBuiltinPredicates()
3929 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>("Monotonic"); in addBuiltinPredicates()
3930 return InsnMatcher; in addBuiltinPredicates()
3933 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>("Acquire"); in addBuiltinPredicates()
3934 return InsnMatcher; in addBuiltinPredicates()
3937 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>("Release"); in addBuiltinPredicates()
3938 return InsnMatcher; in addBuiltinPredicates()
3941 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3943 return InsnMatcher; in addBuiltinPredicates()
3946 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3948 return InsnMatcher; in addBuiltinPredicates()
3953 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3955 return InsnMatcher; in addBuiltinPredicates()
3958 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3960 return InsnMatcher; in addBuiltinPredicates()
3964 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3966 return InsnMatcher; in addBuiltinPredicates()
3969 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in addBuiltinPredicates()
3971 return InsnMatcher; in addBuiltinPredicates()
3974 return InsnMatcher; in addBuiltinPredicates()
3978 RuleMatcher &Rule, InstructionMatcher &InsnMatcher, in createAndImportSelDAGMatcher() argument
3990 InsnMatcher.addPredicate<InstructionOpcodeMatcher>( in createAndImportSelDAGMatcher()
4003 InsnMatcher.addPredicate<InstructionOpcodeMatcher>(SrcGIOrNull); in createAndImportSelDAGMatcher()
4010 OperandMatcher &OM = InsnMatcher.addOperand(OpIdx++, "", TempOpIdx); in createAndImportSelDAGMatcher()
4023 InsnMatcher.addPredicate<InstructionImmPredicateMatcher>(Predicate); in createAndImportSelDAGMatcher()
4028 SrcGIEquivOrNull, Predicate, InsnMatcher, HasAddedBuiltinMatcher); in createAndImportSelDAGMatcher()
4039 InsnMatcher.addPredicate<NoUsePredicateMatcher>(); in createAndImportSelDAGMatcher()
4053 InsnMatcher.addPredicate<GenericInstructionPredicateMatcher>(Predicate); in createAndImportSelDAGMatcher()
4064 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>("NotAtomic"); in createAndImportSelDAGMatcher()
4067 InsnMatcher.addPredicate<AtomicOrderingMMOPredicateMatcher>( in createAndImportSelDAGMatcher()
4075 InsnMatcher.addOperand(OpIdx++, Src->getName(), TempOpIdx); in createAndImportSelDAGMatcher()
4088 InsnMatcher.addOperand(OpIdx++, "", TempOpIdx); in createAndImportSelDAGMatcher()
4089 return InsnMatcher; in createAndImportSelDAGMatcher()
4108 InsnMatcher.addOperand(OpIdx++, SrcChild->getName(), TempOpIdx); in createAndImportSelDAGMatcher()
4131 if (auto Error = importChildMatcher(Rule, InsnMatcher, PtrChild, true, in createAndImportSelDAGMatcher()
4135 if (auto Error = importChildMatcher(Rule, InsnMatcher, ValueChild, false, in createAndImportSelDAGMatcher()
4138 return InsnMatcher; in createAndImportSelDAGMatcher()
4172 InsnMatcher.addOperand(OpIdx++, SrcChild->getName(), TempOpIdx); in createAndImportSelDAGMatcher()
4186 importChildMatcher(Rule, InsnMatcher, SrcChild, OperandIsAPointer, in createAndImportSelDAGMatcher()
4192 return InsnMatcher; in createAndImportSelDAGMatcher()
4226 RuleMatcher &Rule, InstructionMatcher &InsnMatcher, in importChildMatcher() argument
4245 PhysReg ? InsnMatcher.addPhysRegInput(PhysReg, OpIdx, TempOpIdx) in importChildMatcher()
4246 : InsnMatcher.addOperand(OpIdx, SrcChildName, TempOpIdx); in importChildMatcher()
4315 InsnMatcher.getRuleMatcher(), SrcChild->getName()); in importChildMatcher()
4404 InsnMatcher.getRuleMatcher(), SrcChild->getName(), false); in importChildMatcher()
4590 RuleMatcher &M, InstructionMatcher &InsnMatcher, const TreePatternNode *Src, in createAndImportInstructionRenderer() argument
4599 for (auto PhysInput : InsnMatcher.getPhysRegInputs()) { in createAndImportInstructionRenderer()
5208 InstructionMatcher &InsnMatcher = InsnMatcherOrError.get(); in runOnPattern() local
5221 OperandMatcher &OM0 = InsnMatcher.getOperand(0); in runOnPattern()
5258 for (const auto &Pred : InsnMatcher.predicates()) { in runOnPattern()
5304 OperandMatcher &OM = InsnMatcher.getOperand(OpIdx); in runOnPattern()
5315 OperandMatcher &OM = InsnMatcher.getOperand(OpIdx); in runOnPattern()
5327 OperandMatcher &OM = InsnMatcher.getOperand(OpIdx); in runOnPattern()
5336 createAndImportInstructionRenderer(M, InsnMatcher, Src, Dst); in runOnPattern()
6015 InstructionMatcher &InsnMatcher = *Item.first; in optimize() local
6016 for (auto &OM : InsnMatcher.operands()) { in optimize()
6028 InsnMatcher.optimize(); in optimize()