Lines Matching refs:Predicate

126   for (Record *Predicate : Predicates) {  in emitPredicates()
127 Record *Target = Predicate->getValueAsDef("Target"); in emitPredicates()
129 emitFirstPredicate(Predicate, PE, OS); in emitPredicates()
131 emitSecondPredicate(Predicate, PE, OS); in emitPredicates()
133 emitBothPredicate(Predicate, PE, OS); in emitPredicates()
140 void MacroFusionPredicatorEmitter::emitFirstPredicate(Record *Predicate, in emitFirstPredicate() argument
143 if (Predicate->isSubClassOf("WildcardPred")) { in emitFirstPredicate()
146 << (Predicate->getValueAsBit("ReturnValue") ? "true" : "false") in emitFirstPredicate()
148 } else if (Predicate->isSubClassOf("OneUsePred")) { in emitFirstPredicate()
155 } else if (Predicate->isSubClassOf("FusionPredicateWithMCInstPredicate")) { in emitFirstPredicate()
161 PE.expandPredicate(OS, Predicate->getValueAsDef("Predicate")); in emitFirstPredicate()
166 PrintFatalError(Predicate->getLoc(), in emitFirstPredicate()
168 Predicate->getType()->getAsString()); in emitFirstPredicate()
172 void MacroFusionPredicatorEmitter::emitSecondPredicate(Record *Predicate, in emitSecondPredicate() argument
175 if (Predicate->isSubClassOf("FusionPredicateWithMCInstPredicate")) { in emitSecondPredicate()
181 PE.expandPredicate(OS, Predicate->getValueAsDef("Predicate")); in emitSecondPredicate()
186 PrintFatalError(Predicate->getLoc(), in emitSecondPredicate()
188 Predicate->getType()->getAsString()); in emitSecondPredicate()
192 void MacroFusionPredicatorEmitter::emitBothPredicate(Record *Predicate, in emitBothPredicate() argument
195 if (Predicate->isSubClassOf("FusionPredicateWithCode")) in emitBothPredicate()
196 OS << Predicate->getValueAsString("Predicate"); in emitBothPredicate()
197 else if (Predicate->isSubClassOf("BothFusionPredicateWithMCInstPredicate")) { in emitBothPredicate()
198 emitFirstPredicate(Predicate, PE, OS); in emitBothPredicate()
199 emitSecondPredicate(Predicate, PE, OS); in emitBothPredicate()
200 } else if (Predicate->isSubClassOf("TieReg")) { in emitBothPredicate()
201 int FirstOpIdx = Predicate->getValueAsInt("FirstOpIdx"); in emitBothPredicate()
202 int SecondOpIdx = Predicate->getValueAsInt("SecondOpIdx"); in emitBothPredicate()
212 PrintFatalError(Predicate->getLoc(), in emitBothPredicate()
214 Predicate->getType()->getAsString()); in emitBothPredicate()