Lines Matching refs:Checkers
1 //=- ClangSACheckersEmitter.cpp - Generate Clang SA checkers tables -*- C++ -*-
10 // This tablegen backend emits Clang Static Analyzer checkers tables.
23 // Static Analyzer Checkers Tables generation
74 llvm::DenseSet<const Record*> Checkers;
85 llvm::DenseSet<const Record *> &checkers = recordGroupMap[package]->Checkers;
87 I = checkers.begin(), E = checkers.end(); I != E; ++I)
88 recordGroupMap[group]->Checkers.insert(*I);
98 std::vector<Record*> checkers = Records.getAllDerivedDefinitions("Checker");
100 for (unsigned i = 0, e = checkers.size(); i != e; ++i)
101 checkerRecIndexMap[checkers[i]] = i;
103 // Invert the mapping of checkers to package/group into a one to many
104 // mapping of packages/groups to checkers.
130 for (unsigned i = 0, e = checkers.size(); i != e; ++i) {
131 Record *R = checkers[i];
146 info.Checkers.insert(R);
148 recordGroupMap[package]->Checkers.insert(R);
162 recordGroupMap[DI->getDef()]->Checkers.insert(R);
165 // If a package is in group, add all its checkers and its sub-packages
166 // checkers into the group.
224 for (unsigned i = 0, e = checkers.size(); i != e; ++i) {
225 const Record &R = *checkers[i];
255 // Walk through the packages/groups/checkers emitting an array for each
256 // set of checkers and an array for each set of subpackages.
264 llvm::DenseSet<const Record *> &checkers = I->second.Checkers;
265 if (!checkers.empty()) {
270 I = checkers.begin(), E = checkers.end(); I != E; ++I)
305 if (I->second.Checkers.empty())