[clang] [llvm] [LLVM] Add GNU make jobserver support (PR #145131)
Artem Belevich via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 14 11:09:19 PDT 2025
================
@@ -1420,12 +1420,18 @@ int main(int Argc, char **Argv) {
parallel::strategy = hardware_concurrency(1);
if (auto *Arg = Args.getLastArg(OPT_wrapper_jobs)) {
- unsigned Threads = 0;
- if (!llvm::to_integer(Arg->getValue(), Threads) || Threads == 0)
- reportError(createStringError("%s: expected a positive integer, got '%s'",
- Arg->getSpelling().data(),
- Arg->getValue()));
- parallel::strategy = hardware_concurrency(Threads);
+ StringRef Val = Arg->getValue();
+ if (Val.equals_insensitive("jobserver"))
+ parallel::strategy = jobserver_concurrency();
+ else {
+ unsigned Threads = 0;
+ if (!llvm::to_integer(Val, Threads) || Threads == 0) {
+ reportError(createStringError(
+ "%s: expected a positive integer or 'jobserver', got '%s'",
+ Arg->getSpelling().data(), Val.data()));
+ } else
+ parallel::strategy = hardware_concurrency(Threads);
+ }
----------------
Artem-B wrote:
Nit: `{}` are not needed.
https://github.com/llvm/llvm-project/pull/145131
More information about the llvm-commits
mailing list