Lines Matching refs:Predicate
203 const TreePredicateFn &Predicate = Call.Fn; in isTrivialOperatorNode() local
205 if (Predicate.isAlwaysTrue()) in isTrivialOperatorNode()
208 if (Predicate.isImmediatePattern()) in isTrivialOperatorNode()
211 if (Predicate.hasNoUse()) in isTrivialOperatorNode()
214 if (Predicate.isNonExtLoad() || Predicate.isAnyExtLoad() || in isTrivialOperatorNode()
215 Predicate.isSignExtLoad() || Predicate.isZeroExtLoad()) in isTrivialOperatorNode()
218 if (Predicate.isNonTruncStore() || Predicate.isTruncStore()) in isTrivialOperatorNode()
221 if (Predicate.isLoad() && Predicate.getMemoryVT()) in isTrivialOperatorNode()
224 if (Predicate.isLoad() || Predicate.isStore()) { in isTrivialOperatorNode()
225 if (Predicate.isUnindexed()) in isTrivialOperatorNode()
229 if (Predicate.isLoad() || Predicate.isStore() || Predicate.isAtomic()) { in isTrivialOperatorNode()
230 const ListInit *AddrSpaces = Predicate.getAddressSpaces(); in isTrivialOperatorNode()
234 if (Predicate.getMinAlignment() > 0) in isTrivialOperatorNode()
238 if (Predicate.isAtomic() && Predicate.getMemoryVT()) in isTrivialOperatorNode()
241 if (Predicate.isAtomic() && in isTrivialOperatorNode()
242 (Predicate.isAtomicOrderingMonotonic() || in isTrivialOperatorNode()
243 Predicate.isAtomicOrderingAcquire() || in isTrivialOperatorNode()
244 Predicate.isAtomicOrderingRelease() || in isTrivialOperatorNode()
245 Predicate.isAtomicOrderingAcquireRelease() || in isTrivialOperatorNode()
246 Predicate.isAtomicOrderingSequentiallyConsistent() || in isTrivialOperatorNode()
247 Predicate.isAtomicOrderingAcquireOrStronger() || in isTrivialOperatorNode()
248 Predicate.isAtomicOrderingWeakerThanAcquire() || in isTrivialOperatorNode()
249 Predicate.isAtomicOrderingReleaseOrStronger() || in isTrivialOperatorNode()
250 Predicate.isAtomicOrderingWeakerThanRelease())) in isTrivialOperatorNode()
253 if (Predicate.hasGISelPredicateCode()) in isTrivialOperatorNode()
260 Predicate.getOrigPatFragRecord()->getRecord()->getName()) in isTrivialOperatorNode()
420 void declareSubtargetFeature(Record *Predicate);
455 getMemSizeBitsFromPredicate(const TreePredicateFn &Predicate);
460 const TreePredicateFn &Predicate,
514 const TreePredicateFn &Predicate = Call.Fn; in getEquivNode() local
516 (Predicate.isLoad() || Predicate.isAtomic()) && in getEquivNode()
517 Predicate.isSignExtLoad()) in getEquivNode()
520 (Predicate.isLoad() || Predicate.isAtomic()) && in getEquivNode()
521 Predicate.isZeroExtLoad()) in getEquivNode()
549 const TreePredicateFn &Predicate) { in getMemSizeBitsFromPredicate() argument
551 MVTToLLT(getValueType(Predicate.getMemoryVT())); in getMemSizeBitsFromPredicate()
562 const Record *SrcGIEquivOrNull, const TreePredicateFn &Predicate, in addBuiltinPredicates() argument
564 if (Predicate.isLoad() || Predicate.isStore() || Predicate.isAtomic()) { in addBuiltinPredicates()
565 if (const ListInit *AddrSpaces = Predicate.getAddressSpaces()) { in addBuiltinPredicates()
582 int64_t MinAlign = Predicate.getMinAlignment(); in addBuiltinPredicates()
590 if (Predicate.isLoad() && Predicate.isNonExtLoad()) { in addBuiltinPredicates()
595 if (Predicate.isLoad() && Predicate.isAnyExtLoad()) { in addBuiltinPredicates()
601 if (Predicate.isStore()) { in addBuiltinPredicates()
602 if (Predicate.isTruncStore()) { in addBuiltinPredicates()
603 if (Predicate.getMemoryVT() != nullptr) { in addBuiltinPredicates()
605 auto MemSizeInBits = getMemSizeBitsFromPredicate(Predicate); in addBuiltinPredicates()
617 if (Predicate.isNonTruncStore()) { in addBuiltinPredicates()
628 Predicate.isSignExtLoad()) in addBuiltinPredicates()
633 Predicate.isZeroExtLoad()) in addBuiltinPredicates()
637 if (Predicate.isNonTruncStore()) in addBuiltinPredicates()
640 if (Predicate.isLoad() || Predicate.isStore() || Predicate.isAtomic()) { in addBuiltinPredicates()
641 if (Predicate.getMemoryVT() != nullptr) { in addBuiltinPredicates()
642 auto MemSizeInBits = getMemSizeBitsFromPredicate(Predicate); in addBuiltinPredicates()
652 if (Predicate.isLoad() || Predicate.isStore()) { in addBuiltinPredicates()
654 if (Predicate.isUnindexed()) in addBuiltinPredicates()
658 if (Predicate.isAtomic()) { in addBuiltinPredicates()
659 if (Predicate.isAtomicOrderingMonotonic()) { in addBuiltinPredicates()
663 if (Predicate.isAtomicOrderingAcquire()) { in addBuiltinPredicates()
667 if (Predicate.isAtomicOrderingRelease()) { in addBuiltinPredicates()
671 if (Predicate.isAtomicOrderingAcquireRelease()) { in addBuiltinPredicates()
676 if (Predicate.isAtomicOrderingSequentiallyConsistent()) { in addBuiltinPredicates()
683 if (Predicate.isAtomicOrderingAcquireOrStronger()) { in addBuiltinPredicates()
688 if (Predicate.isAtomicOrderingWeakerThanAcquire()) { in addBuiltinPredicates()
694 if (Predicate.isAtomicOrderingReleaseOrStronger()) { in addBuiltinPredicates()
699 if (Predicate.isAtomicOrderingWeakerThanRelease()) { in addBuiltinPredicates()
749 const TreePredicateFn &Predicate = Call.Fn; in createAndImportSelDAGMatcher() local
751 if (Predicate.isAlwaysTrue()) in createAndImportSelDAGMatcher()
754 if (Predicate.isImmediatePattern()) { in createAndImportSelDAGMatcher()
755 InsnMatcher.addPredicate<InstructionImmPredicateMatcher>(Predicate); in createAndImportSelDAGMatcher()
760 SrcGIEquivOrNull, Predicate, InsnMatcher, HasAddedBuiltinMatcher); in createAndImportSelDAGMatcher()
770 if (Predicate.hasNoUse()) { in createAndImportSelDAGMatcher()
775 if (Predicate.hasGISelPredicateCode()) { in createAndImportSelDAGMatcher()
776 if (Predicate.usesOperands()) { in createAndImportSelDAGMatcher()
780 TreePattern *TP = Predicate.getOrigPatFragRecord(); in createAndImportSelDAGMatcher()
785 InsnMatcher.addPredicate<GenericInstructionPredicateMatcher>(Predicate); in createAndImportSelDAGMatcher()
982 const TreePredicateFn &Predicate = Call.Fn; in importChildMatcher() local
985 if (Predicate.isImmediatePattern()) { in importChildMatcher()
986 OM.addPredicate<OperandImmPredicateMatcher>(Predicate); in importChildMatcher()
2491 void GlobalISelEmitter::declareSubtargetFeature(Record *Predicate) { in declareSubtargetFeature() argument
2492 SubtargetFeatures.try_emplace(Predicate, Predicate, SubtargetFeatures.size()); in declareSubtargetFeature()