summaryrefslogtreecommitdiffstats
path: root/llvm/tools
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2019-01-23 11:54:55 +0000
committerMartin Storsjo <martin@martin.st>2019-01-23 11:54:55 +0000
commit0d19a399a3f6bce2d53b1b0fb5710a34c150b28f (patch)
tree49db27ca636a64c9788520da2e441635a8b87bf9 /llvm/tools
parent1be91958b34cf0d8a4301dfed1a0ab5bd43997fa (diff)
downloadbcm5719-llvm-0d19a399a3f6bce2d53b1b0fb5710a34c150b28f.tar.gz
bcm5719-llvm-0d19a399a3f6bce2d53b1b0fb5710a34c150b28f.zip
[llvm-objcopy] [COFF] Error out on use of unhandled options
Prefer erroring out than silently not doing what was requested. Differential Revision: https://reviews.llvm.org/D57045 llvm-svn: 351948
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp b/llvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
index 64b4e79a4e0..b7b3d3cb629 100644
--- a/llvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
+++ b/llvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
@@ -170,6 +170,21 @@ static Error handleArgs(const CopyConfig &Config, Object &Obj) {
if (!Config.AddGnuDebugLink.empty())
addGnuDebugLink(Obj, Config.AddGnuDebugLink);
+ if (!Config.BuildIdLinkDir.empty() || Config.BuildIdLinkInput ||
+ Config.BuildIdLinkOutput || !Config.SplitDWO.empty() ||
+ !Config.SymbolsPrefix.empty() || !Config.AddSection.empty() ||
+ !Config.DumpSection.empty() || !Config.KeepSection.empty() ||
+ !Config.SymbolsToGlobalize.empty() || !Config.SymbolsToKeep.empty() ||
+ !Config.SymbolsToLocalize.empty() || !Config.SymbolsToWeaken.empty() ||
+ !Config.SymbolsToKeepGlobal.empty() || !Config.SectionsToRename.empty() ||
+ !Config.SymbolsToRename.empty() || Config.ExtractDWO ||
+ Config.KeepFileSymbols || Config.LocalizeHidden || Config.PreserveDates ||
+ Config.StripDWO || Config.StripNonAlloc || Config.StripSections ||
+ Config.Weaken || Config.DecompressDebugSections) {
+ return createStringError(llvm::errc::invalid_argument,
+ "Option not supported by llvm-objcopy for COFF");
+ }
+
return Error::success();
}
OpenPOWER on IntegriCloud