Lines Matching refs:opts
99 namespace opts {
880 ExitOnErr(Builder.commit(opts::yaml2pdb::YamlPdbOutputFile, &IgnoredOutGuid));
915 bool opts::pretty::shouldDumpSymLevel(SymLevel Search) {
932 bool opts::pretty::compareFunctionSymbols(
935 assert(opts::pretty::SymbolOrder != opts::pretty::SymbolSortMode::None);
937 if (opts::pretty::SymbolOrder == opts::pretty::SymbolSortMode::Name)
945 bool opts::pretty::compareDataSymbols(
948 assert(opts::pretty::SymbolOrder != opts::pretty::SymbolSortMode::None);
950 if (opts::pretty::SymbolOrder == opts::pretty::SymbolSortMode::Name)
999 if (!opts::pretty::ShowInjectedSourceContent)
1037 opts::diadump::Native ? PDB_ReaderType::Native : PDB_ReaderType::DIA;
1044 if (opts::diadump::Compilands)
1046 if (opts::diadump::Enums)
1048 if (opts::diadump::Pointers)
1050 if (opts::diadump::UDTs)
1052 if (opts::diadump::Funcsigs)
1054 if (opts::diadump::Arrays)
1056 if (opts::diadump::VTShapes)
1058 if (opts::diadump::Typedefs)
1060 PdbSymbolIdField Ids = opts::diadump::NoSymIndexIds ? PdbSymbolIdField::None
1064 if (opts::diadump::Recurse)
1066 if (!opts::diadump::ShowClassHierarchy)
1085 opts::pretty::Native ? PDB_ReaderType::Native : PDB_ReaderType::DIA;
1088 if (opts::pretty::LoadAddress)
1089 Session->setLoadAddress(opts::pretty::LoadAddress);
1092 const bool UseColor = opts::pretty::ColorOutput == cl::BOU_UNSET
1094 : opts::pretty::ColorOutput == cl::BOU_TRUE;
1095 LinePrinter Printer(2, UseColor, Stream, opts::Filters);
1132 if (!opts::pretty::WithName.empty()) {
1137 for (StringRef Name : opts::pretty::WithName) {
1208 if (opts::pretty::Compilands) {
1218 if (opts::pretty::Lines)
1226 if (opts::pretty::Classes || opts::pretty::Enums || opts::pretty::Typedefs ||
1227 opts::pretty::Funcsigs || opts::pretty::Pointers ||
1228 opts::pretty::Arrays || opts::pretty::VTShapes) {
1237 if (opts::pretty::Symbols) {
1249 if (opts::pretty::Globals) {
1253 if (shouldDumpSymLevel(opts::pretty::SymLevel::Functions)) {
1256 if (opts::pretty::SymbolOrder == opts::pretty::SymbolSortMode::None) {
1265 llvm::sort(Funcs, opts::pretty::compareFunctionSymbols);
1273 if (shouldDumpSymLevel(opts::pretty::SymLevel::Data)) {
1276 if (opts::pretty::SymbolOrder == opts::pretty::SymbolSortMode::None) {
1283 llvm::sort(Datas, opts::pretty::compareDataSymbols);
1289 if (shouldDumpSymLevel(opts::pretty::SymLevel::Thunks)) {
1298 if (opts::pretty::Externals) {
1305 if (opts::pretty::Lines) {
1308 if (opts::pretty::InjectedSources) {
1326 for (const auto &Path : opts::merge::InputFilenames) {
1361 SmallString<64> OutFile(opts::merge::PdbOutputFile);
1363 OutFile = opts::merge::InputFilenames[0];
1374 ExitOnErr(InputFile::open(opts::explain::InputFilename.front(), true));
1376 for (uint64_t Off : opts::explain::Offsets) {
1385 PDBFile &File = loadPDB(opts::exportstream::InputFilename.front(), Session);
1390 std::string OutFileName = opts::exportstream::OutputFile;
1392 if (!opts::exportstream::ForceName) {
1395 if (to_integer(opts::exportstream::Stream, Index)) {
1408 Index = ExitOnErr(IS.getNamedStreamIndex(opts::exportstream::Stream));
1409 outs() << "Dumping contents of stream '" << opts::exportstream::Stream
1423 std::optional<opts::bytes::NumberRange> &Parsed) {
1444 static void simplifyChunkList(llvm::cl::list<opts::ModuleSubsection> &Chunks) {
1447 if (!llvm::is_contained(Chunks, opts::ModuleSubsection::All))
1450 Chunks.push_back(opts::ModuleSubsection::All);
1458 {&opts::TypeCategory, &opts::FilterCategory, &opts::OtherOptions});
1461 if (opts::BytesSubcommand) {
1462 if (!parseRange(opts::bytes::DumpBlockRangeOpt,
1463 opts::bytes::DumpBlockRange)) {
1464 errs() << "Argument '" << opts::bytes::DumpBlockRangeOpt
1469 if (!parseRange(opts::bytes::DumpByteRangeOpt,
1470 opts::bytes::DumpByteRange)) {
1471 errs() << "Argument '" << opts::bytes::DumpByteRangeOpt
1478 if (opts::DumpSubcommand) {
1479 if (opts::dump::RawAll) {
1480 opts::dump::DumpGlobals = true;
1481 opts::dump::DumpFpo = true;
1482 opts::dump::DumpInlineeLines = true;
1483 opts::dump::DumpIds = true;
1484 opts::dump::DumpIdExtras = true;
1485 opts::dump::DumpLines = true;
1486 opts::dump::DumpModules = true;
1487 opts::dump::DumpModuleFiles = true;
1488 opts::dump::DumpPublics = true;
1489 opts::dump::DumpSectionContribs = true;
1490 opts::dump::DumpSectionHeaders = true;
1491 opts::dump::DumpSectionMap = true;
1492 opts::dump::DumpStreams = true;
1493 opts::dump::DumpStreamBlocks = true;
1494 opts::dump::DumpStringTable = true;
1495 opts::dump::DumpStringTableDetails = true;
1496 opts::dump::DumpSummary = true;
1497 opts::dump::DumpSymbols = true;
1498 opts::dump::DumpSymbolStats = true;
1499 opts::dump::DumpTypes = true;
1500 opts::dump::DumpTypeExtras = true;
1501 opts::dump::DumpUdtStats = true;
1502 opts::dump::DumpXme = true;
1503 opts::dump::DumpXmi = true;
1506 if (opts::PdbToYamlSubcommand) {
1507 if (opts::pdb2yaml::All) {
1508 opts::pdb2yaml::StreamMetadata = true;
1509 opts::pdb2yaml::StreamDirectory = true;
1510 opts::pdb2yaml::PdbStream = true;
1511 opts::pdb2yaml::StringTable = true;
1512 opts::pdb2yaml::DbiStream = true;
1513 opts::pdb2yaml::TpiStream = true;
1514 opts::pdb2yaml::IpiStream = true;
1515 opts::pdb2yaml::PublicsStream = true;
1516 opts::pdb2yaml::DumpModules = true;
1517 opts::pdb2yaml::DumpModuleFiles = true;
1518 opts::pdb2yaml::DumpModuleSyms = true;
1519 opts::pdb2yaml::DumpModuleSubsections.push_back(
1520 opts::ModuleSubsection::All);
1522 simplifyChunkList(opts::pdb2yaml::DumpModuleSubsections);
1524 if (opts::pdb2yaml::DumpModuleSyms || opts::pdb2yaml::DumpModuleFiles)
1525 opts::pdb2yaml::DumpModules = true;
1527 if (opts::pdb2yaml::DumpModules)
1528 opts::pdb2yaml::DbiStream = true;
1539 propagate(opts::Filters.ExcludeTypes, opts::pretty::ExcludeTypes);
1540 propagate(opts::Filters.ExcludeTypes, opts::pretty::ExcludeTypes);
1541 propagate(opts::Filters.ExcludeSymbols, opts::pretty::ExcludeSymbols);
1542 propagate(opts::Filters.ExcludeCompilands, opts::pretty::ExcludeCompilands);
1543 propagate(opts::Filters.IncludeTypes, opts::pretty::IncludeTypes);
1544 propagate(opts::Filters.IncludeSymbols, opts::pretty::IncludeSymbols);
1545 propagate(opts::Filters.IncludeCompilands, opts::pretty::IncludeCompilands);
1546 opts::Filters.PaddingThreshold = opts::pretty::PaddingThreshold;
1547 opts::Filters.SizeThreshold = opts::pretty::SizeThreshold;
1548 opts::Filters.JustMyCode = opts::dump::JustMyCode;
1549 if (opts::dump::DumpModi.getNumOccurrences() > 0) {
1550 if (opts::dump::DumpModi.getNumOccurrences() != 1) {
1555 opts::Filters.DumpModi = opts::dump::DumpModi;
1557 if (opts::dump::DumpSymbolOffset) {
1558 if (opts::dump::DumpModi.getNumOccurrences() != 1) {
1564 opts::Filters.SymbolOffset = opts::dump::DumpSymbolOffset;
1565 if (opts::dump::DumpParents)
1566 opts::Filters.ParentRecurseDepth = opts::dump::DumpParentDepth;
1567 if (opts::dump::DumpChildren)
1568 opts::Filters.ChildrenRecurseDepth = opts::dump::DumpChildrenDepth;
1571 if (opts::PdbToYamlSubcommand) {
1572 pdb2Yaml(opts::pdb2yaml::InputFilename.front());
1573 } else if (opts::YamlToPdbSubcommand) {
1574 if (opts::yaml2pdb::YamlPdbOutputFile.empty()) {
1575 SmallString<16> OutputFilename(opts::yaml2pdb::InputFilename.getValue());
1577 opts::yaml2pdb::YamlPdbOutputFile = std::string(OutputFilename);
1579 yamlToPdb(opts::yaml2pdb::InputFilename);
1580 } else if (opts::DiaDumpSubcommand) {
1581 llvm::for_each(opts::diadump::InputFilenames, dumpDia);
1582 } else if (opts::PrettySubcommand) {
1583 if (opts::pretty::Lines)
1584 opts::pretty::Compilands = true;
1586 if (opts::pretty::All) {
1587 opts::pretty::Compilands = true;
1588 opts::pretty::Symbols = true;
1589 opts::pretty::Globals = true;
1590 opts::pretty::Types = true;
1591 opts::pretty::Externals = true;
1592 opts::pretty::Lines = true;
1595 if (opts::pretty::Types) {
1596 opts::pretty::Classes = true;
1597 opts::pretty::Typedefs = true;
1598 opts::pretty::Enums = true;
1599 opts::pretty::Pointers = true;
1600 opts::pretty::Funcsigs = true;
1608 if (opts::pretty::ExcludeCompilerGenerated) {
1609 opts::Filters.ExcludeTypes.push_back("__vc_attributes");
1610 opts::Filters.ExcludeCompilands.push_back("\\* Linker \\*");
1612 if (opts::pretty::ExcludeSystemLibraries) {
1613 opts::Filters.ExcludeCompilands.push_back(
1615 opts::Filters.ExcludeCompilands.push_back("f:\\\\dd\\\\vctools\\\\crt");
1616 opts::Filters.ExcludeCompilands.push_back(
1619 llvm::for_each(opts::pretty::InputFilenames, dumpPretty);
1620 } else if (opts::DumpSubcommand) {
1621 llvm::for_each(opts::dump::InputFilenames, dumpRaw);
1622 } else if (opts::BytesSubcommand) {
1623 llvm::for_each(opts::bytes::InputFilenames, dumpBytes);
1624 } else if (opts::MergeSubcommand) {
1625 if (opts::merge::InputFilenames.size() < 2) {
1630 } else if (opts::ExplainSubcommand) {
1632 } else if (opts::ExportSubcommand) {