1 | #include "TableGenBackends.h" |
---|---|
2 | #include "llvm/TableGen/Record.h" |
3 | #include "llvm/TableGen/TableGenBackend.h" |
4 | |
5 | using namespace llvm; |
6 | |
7 | void clang::EmitClangDataCollectors(RecordKeeper &RK, raw_ostream &OS) { |
8 | const auto &Defs = RK.getClasses(); |
9 | for (const auto &Entry : Defs) { |
10 | Record &R = *Entry.second; |
11 | OS << "DEF_ADD_DATA("<< R.getName() << ", {\n"; |
12 | auto Code = R.getValue(Name: "Code")->getValue(); |
13 | OS << Code->getAsUnquotedString() << "}\n)"; |
14 | OS << "\n"; |
15 | } |
16 | OS << "#undef DEF_ADD_DATA\n"; |
17 | } |
18 |