[llvm] Add Offoading to llvm-readobj and llvm-objcopy (PR #141978)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Thu May 29 10:00:31 PDT 2025
================
@@ -1542,27 +1564,30 @@ objcopy::parseStripOptions(ArrayRef<const char *> RawArgsArr,
exit(0);
}
- SmallVector<StringRef, 2> Positional;
- for (auto *Arg : InputArgs.filtered(STRIP_UNKNOWN))
- return createStringError(errc::invalid_argument, "unknown argument '%s'",
- Arg->getAsString(InputArgs).c_str());
- for (auto *Arg : InputArgs.filtered(STRIP_INPUT))
- Positional.push_back(Arg->getValue());
- std::copy(DashDash, RawArgsArr.end(), std::back_inserter(Positional));
-
- if (Positional.empty())
- return createStringError(errc::invalid_argument, "no input file specified");
-
- if (Positional.size() > 1 && InputArgs.hasArg(STRIP_output))
- return createStringError(
- errc::invalid_argument,
- "multiple input files cannot be used in combination with -o");
-
ConfigManager ConfigMgr;
CommonConfig &Config = ConfigMgr.Common;
ELFConfig &ELFConfig = ConfigMgr.ELF;
MachOConfig &MachOConfig = ConfigMgr.MachO;
+ SmallVector<StringRef, 2> Positional;
+ if (Config.NeedPositional) {
+ for (auto *Arg : InputArgs.filtered(STRIP_UNKNOWN))
+ return createStringError(errc::invalid_argument, "unknown argument '%s'",
+ Arg->getAsString(InputArgs).c_str());
+ for (auto *Arg : InputArgs.filtered(STRIP_INPUT))
+ Positional.push_back(Arg->getValue());
+ std::copy(DashDash, RawArgsArr.end(), std::back_inserter(Positional));
+
+ if (Positional.empty())
+ return createStringError(errc::invalid_argument,
+ "no input file specified");
+
+ if (Positional.size() > 1 && InputArgs.hasArg(STRIP_output))
----------------
arsenm wrote:
Braces
https://github.com/llvm/llvm-project/pull/141978
More information about the llvm-commits
mailing list