diff options
-rw-r--r-- | llvm/test/tools/llvm-objcopy/help-message.test | 8 | ||||
-rw-r--r-- | llvm/tools/llvm-objcopy/llvm-objcopy.cpp | 16 |
2 files changed, 21 insertions, 3 deletions
diff --git a/llvm/test/tools/llvm-objcopy/help-message.test b/llvm/test/tools/llvm-objcopy/help-message.test new file mode 100644 index 00000000000..5f49967fc8f --- /dev/null +++ b/llvm/test/tools/llvm-objcopy/help-message.test @@ -0,0 +1,8 @@ +# RUN: llvm-objcopy --help | FileCheck --check-prefix=CHECK-OBJCOPY %s +# RUN: not llvm-objcopy 2>&1 | FileCheck --check-prefix=CHECK-OBJCOPY %s + +# RUN: llvm-strip --help | FileCheck --check-prefix=CHECK-STRIP %s +# RUN: not llvm-strip 2>&1 | FileCheck --check-prefix=CHECK-STRIP %s + +# CHECK-OBJCOPY: USAGE: llvm-objcopy +# CHECK-STRIP: USAGE: llvm-strip diff --git a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp index 295c9bf9285..1cfcb06e8e4 100644 --- a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp +++ b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp @@ -409,8 +409,13 @@ CopyConfig ParseObjcopyOptions(ArrayRef<const char *> ArgsArr) { unsigned MissingArgumentIndex, MissingArgumentCount; llvm::opt::InputArgList InputArgs = T.ParseArgs(ArgsArr, MissingArgumentIndex, MissingArgumentCount); - - if (InputArgs.size() == 0 || InputArgs.hasArg(OBJCOPY_help)) { + + if (InputArgs.size() == 0) { + T.PrintHelp(errs(), "llvm-objcopy <input> [ <output> ]", "objcopy tool"); + exit(1); + } + + if (InputArgs.hasArg(OBJCOPY_help)) { T.PrintHelp(outs(), "llvm-objcopy <input> [ <output> ]", "objcopy tool"); exit(0); } @@ -484,7 +489,12 @@ CopyConfig ParseStripOptions(ArrayRef<const char *> ArgsArr) { llvm::opt::InputArgList InputArgs = T.ParseArgs(ArgsArr, MissingArgumentIndex, MissingArgumentCount); - if (InputArgs.size() == 0 || InputArgs.hasArg(STRIP_help)) { + if (InputArgs.size() == 0) { + T.PrintHelp(errs(), "llvm-strip <input> [ <output> ]", "strip tool"); + exit(1); + } + + if (InputArgs.hasArg(STRIP_help)) { T.PrintHelp(outs(), "llvm-strip <input> [ <output> ]", "strip tool"); exit(0); } |