Lines Matching full:record
26 #include "llvm/TableGen/Record.h"
43 std::map<const Record*, std::vector<Record*> > Mapping;
46 std::vector<Record*> DiagGroups
49 std::vector<Record*> SubGroups =
56 const std::vector<Record*> &getParents(const Record *Group) {
63 getCategoryFromDiagGroup(const Record *Group,
71 const std::vector<Record*> &Parents = DiagGroupParents.getParents(Group);
81 static std::string getDiagnosticCategory(const Record *R,
108 std::vector<Record*> Diags =
132 std::vector<const Record*> DiagsInGroup;
136 const Record *ExplicitDef;
142 static bool beforeThanCompare(const Record *LHS, const Record *RHS) {
154 static SMRange findSuperClassRange(const Record *R, StringRef SuperName) {
155 ArrayRef<Record *> Supers = R->getSuperClasses();
166 static void groupDiagnostics(const std::vector<Record*> &Diags,
167 const std::vector<Record*> &DiagGroups,
171 const Record *R = Diags[i];
187 Record *Group = DiagGroups[i];
199 std::vector<Record*> SubGroups = Group->getValueAsListOfDefs("SubGroups");
216 MutableArrayRef<const Record *> GroupDiags = (*I)->DiagsInGroup;
225 ArrayRef<const Record *> GroupDiags = (*I)->DiagsInGroup;
229 for (ArrayRef<const Record *>::const_iterator DI = GroupDiags.begin(),
233 const Record *NextDiagGroup = GroupInit->getDef();
259 ArrayRef<const Record *>::const_iterator DI = GroupDiags.begin(),
264 const Record *NextDiagGroup = GroupInit->getDef();
289 typedef std::vector<const Record *> RecordVec;
290 typedef llvm::DenseSet<const Record *> RecordSet;
295 typedef llvm::DenseMap<const Record*,
299 const std::vector<Record*> &Diags;
300 const std::vector<Record*> DiagGroups;
302 llvm::DenseSet<const Record*> DiagsSet;
306 const std::vector<Record*> &Diags,
307 const std::vector<Record*> &DiagGroups,
321 bool isSubGroupOfGroup(const Record *Group,
325 bool isExtension(const Record *Diag);
328 bool isOffByDefault(const Record *Diag);
332 void markGroup(const Record *Group);
335 bool groupInPedantic(const Record *Group, bool increment = false);
339 bool InferPedantic::isSubGroupOfGroup(const Record *Group,
346 const std::vector<Record*> &Parents = DiagGroupParents.getParents(Group);
355 bool InferPedantic::isExtension(const Record *Diag) {
360 bool InferPedantic::isOffByDefault(const Record *Diag) {
366 bool InferPedantic::groupInPedantic(const Record *Group, bool increment) {
383 void InferPedantic::markGroup(const Record *Group) {
389 const std::vector<Record*> &Parents = DiagGroupParents.getParents(Group);
401 Record *R = Diags[i];
405 const Record *GroupRec = Group->getDef();
417 Record *R = Diags[i];
443 Record *Group = DiagGroups[i];
448 const std::vector<Record*> &Parents = DiagGroupParents.getParents(Group);
472 static bool isError(const Record &Diag) {
477 static bool isRemark(const Record &Diag) {
497 const std::vector<Record*> &Diags =
500 std::vector<Record*> DiagGroups
515 const Record &R = *Diags[i];
521 const Record *GroupRec = Group->getDef();
671 const std::vector<const Record *> &V = I.second.DiagsInGroup;
674 for (auto *Record : V)
675 OS << "diag::" << Record->getName() << ", ";
772 const std::vector<const Record *> &V = I.second.DiagsInGroup;
829 std::vector<Record *> Diags = Records.getAllDerivedDefinitions("Diagnostic");
831 std::vector<Record *> DiagGroups =
837 // All extensions are implicitly in the "pedantic" group. Record the
871 explicit RecordIndexElement(Record const &R):
880 const std::vector<Record*> &Diags =
886 const Record &R = *(Diags[i]);