reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/llvm-objcopy/CopyConfig.cpp
  411   Config.InputFilename = Positional[0];
  412   Config.OutputFilename = Positional[Positional.size() == 1 ? 0 : 1];
  444   Config.InputFormat = StringSwitch<FileFormat>(InputFormat)
  450     Config.NewSymbolVisibility =
  453   Config.OutputFormat = StringSwitch<FileFormat>(OutputFormat)
  457   if (Config.OutputFormat == FileFormat::Unspecified) {
  459       Config.OutputFormat = Config.InputFormat;
  459       Config.OutputFormat = Config.InputFormat;
  465       Config.OutputFormat = Target->Format;
  466       Config.OutputArch = Target->Machine;
  472     Config.CompressionType = DebugCompressionType::Z;
  475       Config.CompressionType =
  481       if (Config.CompressionType == DebugCompressionType::None)
  495   Config.AddGnuDebugLink = InputArgs.getLastArgValue(OBJCOPY_add_gnu_debuglink);
  500   if (!Config.AddGnuDebugLink.empty()) {
  501     auto DebugOrErr = MemoryBuffer::getFile(Config.AddGnuDebugLink);
  503       return createFileError(Config.AddGnuDebugLink, DebugOrErr.getError());
  505     Config.GnuDebugLinkCRC32 =
  508   Config.BuildIdLinkDir = InputArgs.getLastArgValue(OBJCOPY_build_id_link_dir);
  510     Config.BuildIdLinkInput =
  513     Config.BuildIdLinkOutput =
  515   Config.SplitDWO = InputArgs.getLastArgValue(OBJCOPY_split_dwo);
  516   Config.SymbolsPrefix = InputArgs.getLastArgValue(OBJCOPY_prefix_symbols);
  517   Config.AllocSectionsPrefix =
  520     Config.ExtractPartition = Arg->getValue();
  527     if (!Config.SymbolsToRename.insert(Old2New).second)
  534     if (Error E = addSymbolsToRenameFromFile(Config.SymbolsToRename, DC.Alloc,
  543     if (!Config.SectionsToRename.try_emplace(SR->OriginalName, *SR).second)
  553     Config.SetSectionAlignment[NameAndAlign->first] = NameAndAlign->second;
  560     if (!Config.SetSectionFlags.try_emplace(SFU->Name, *SFU).second)
  568   for (const auto &E : Config.SectionsToRename) {
  570     if (Config.SetSectionFlags.count(SR.OriginalName))
  576     if (Config.SetSectionFlags.count(SR.NewName))
  585     if (Error E = Config.ToRemove.addMatcher(NameOrPattern::create(
  589     if (Error E = Config.KeepSection.addMatcher(NameOrPattern::create(
  593     if (Error E = Config.OnlySection.addMatcher(NameOrPattern::create(
  605     Config.AddSection.push_back(ArgValue);
  608     Config.DumpSection.push_back(Arg->getValue());
  609   Config.StripAll = InputArgs.hasArg(OBJCOPY_strip_all);
  610   Config.StripAllGNU = InputArgs.hasArg(OBJCOPY_strip_all_gnu);
  611   Config.StripDebug = InputArgs.hasArg(OBJCOPY_strip_debug);
  612   Config.StripDWO = InputArgs.hasArg(OBJCOPY_strip_dwo);
  613   Config.StripSections = InputArgs.hasArg(OBJCOPY_strip_sections);
  614   Config.StripNonAlloc = InputArgs.hasArg(OBJCOPY_strip_non_alloc);
  615   Config.StripUnneeded = InputArgs.hasArg(OBJCOPY_strip_unneeded);
  616   Config.ExtractDWO = InputArgs.hasArg(OBJCOPY_extract_dwo);
  617   Config.ExtractMainPartition =
  619   Config.LocalizeHidden = InputArgs.hasArg(OBJCOPY_localize_hidden);
  620   Config.Weaken = InputArgs.hasArg(OBJCOPY_weaken);
  622     Config.DiscardMode =
  626   Config.OnlyKeepDebug = InputArgs.hasArg(OBJCOPY_only_keep_debug);
  627   Config.KeepFileSymbols = InputArgs.hasArg(OBJCOPY_keep_file_symbols);
  628   Config.DecompressDebugSections =
  630   if (Config.DiscardMode == DiscardType::All)
  631     Config.StripDebug = true;
  633     if (Error E = Config.SymbolsToLocalize.addMatcher(NameOrPattern::create(
  637     if (Error E = addSymbolsFromFile(Config.SymbolsToLocalize, DC.Alloc,
  642     if (Error E = Config.SymbolsToKeepGlobal.addMatcher(NameOrPattern::create(
  646     if (Error E = addSymbolsFromFile(Config.SymbolsToKeepGlobal, DC.Alloc,
  651     if (Error E = Config.SymbolsToGlobalize.addMatcher(NameOrPattern::create(
  655     if (Error E = addSymbolsFromFile(Config.SymbolsToGlobalize, DC.Alloc,
  660     if (Error E = Config.SymbolsToWeaken.addMatcher(NameOrPattern::create(
  664     if (Error E = addSymbolsFromFile(Config.SymbolsToWeaken, DC.Alloc,
  669     if (Error E = Config.SymbolsToRemove.addMatcher(NameOrPattern::create(
  673     if (Error E = addSymbolsFromFile(Config.SymbolsToRemove, DC.Alloc,
  679             Config.UnneededSymbolsToRemove.addMatcher(NameOrPattern::create(
  683     if (Error E = addSymbolsFromFile(Config.UnneededSymbolsToRemove, DC.Alloc,
  688     if (Error E = Config.SymbolsToKeep.addMatcher(NameOrPattern::create(
  693             addSymbolsFromFile(Config.SymbolsToKeep, DC.Alloc, Arg->getValue(),
  697     Config.SymbolsToAdd.push_back(Arg->getValue());
  699   Config.AllowBrokenLinks = InputArgs.hasArg(OBJCOPY_allow_broken_links);
  701   Config.DeterministicArchives = InputArgs.hasFlag(
  705   Config.PreserveDates = InputArgs.hasArg(OBJCOPY_preserve_dates);
  707   if (Config.PreserveDates &&
  708       (Config.OutputFilename == "-" || Config.InputFilename == "-"))
  708       (Config.OutputFilename == "-" || Config.InputFilename == "-"))
  719       Config.EntryExpr = [EAddr](uint64_t) { return *EAddr; };
  726       auto Expr = Config.EntryExpr ? std::move(Config.EntryExpr)
  726       auto Expr = Config.EntryExpr ? std::move(Config.EntryExpr)
  728       Config.EntryExpr = [Expr, EIncr](uint64_t EAddr) {
  733   if (Config.DecompressDebugSections &&
  734       Config.CompressionType != DebugCompressionType::None) {
  741   if (Config.DecompressDebugSections && !zlib::isAvailable())
  746   if (Config.ExtractPartition && Config.ExtractMainPartition)
  746   if (Config.ExtractPartition && Config.ExtractMainPartition)
  751   DC.CopyConfigs.push_back(std::move(Config));