16 #include "llvm/Support/raw_ostream.h" 18 using namespace clang;
19 using namespace serialization;
20 using namespace reader;
28 template<
typename Key,
typename Offset,
unsigned InitialCapacity>
36 llvm::errs() <<
" " << Name <<
":\n";
37 for (
typename MapType::const_iterator I = Map.
begin(), IEnd = Map.
end();
39 llvm::errs() <<
" " << I->first <<
" -> " << I->second <<
"\n";
44 llvm::errs() <<
"\nModule: " << FileName <<
"\n";
45 if (!Imports.empty()) {
46 llvm::errs() <<
" Imports: ";
47 for (
unsigned I = 0, N = Imports.size(); I != N; ++I) {
50 llvm::errs() << Imports[I]->FileName;
56 llvm::errs() <<
" Base source location offset: " << SLocEntryBaseOffset
60 llvm::errs() <<
" Base identifier ID: " << BaseIdentifierID <<
'\n' 61 <<
" Number of identifiers: " << LocalNumIdentifiers <<
'\n';
62 dumpLocalRemap(
"Identifier ID local -> global map", IdentifierRemap);
64 llvm::errs() <<
" Base macro ID: " << BaseMacroID <<
'\n' 65 <<
" Number of macros: " << LocalNumMacros <<
'\n';
68 llvm::errs() <<
" Base submodule ID: " << BaseSubmoduleID <<
'\n' 69 <<
" Number of submodules: " << LocalNumSubmodules <<
'\n';
70 dumpLocalRemap(
"Submodule ID local -> global map", SubmoduleRemap);
72 llvm::errs() <<
" Base selector ID: " << BaseSelectorID <<
'\n' 73 <<
" Number of selectors: " << LocalNumSelectors <<
'\n';
76 llvm::errs() <<
" Base preprocessed entity ID: " << BasePreprocessedEntityID
78 <<
" Number of preprocessed entities: " 79 << NumPreprocessedEntities <<
'\n';
81 PreprocessedEntityRemap);
83 llvm::errs() <<
" Base type index: " << BaseTypeIndex <<
'\n' 84 <<
" Number of types: " << LocalNumTypes <<
'\n';
87 llvm::errs() <<
" Base decl ID: " << BaseDeclID <<
'\n' 88 <<
" Number of decls: " << LocalNumDecls <<
'\n';
void dump()
Dump debugging output for this module.
Dataflow Directional Tag Classes.
static void dumpLocalRemap(StringRef Name, const ContinuousRangeMap< Key, Offset, InitialCapacity > &Map)
A map from continuous integer ranges to some value, with a very specialized interface.