[PATCH] D149072: [CMake] Serialize `build_native_tool`

NAKAMURA Takumi via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 27 07:03:30 PDT 2023


chapuni added a comment.

In D149072#4300868 <https://reviews.llvm.org/D149072#4300868>, @beanz wrote:

> This feels like it could have unintended and unfortunate consequences.

I know this is far from optimal rather than suboptimal. I don't intend any optimizations.

> Does this not make `mlir-tablegen` depend on `clang-tablegen`? If it does that could increase iteration loops where native tools are involved by building unrelated things that don't strictly need to be built or have a dependency.

I know this will introduce longer dependency chain. That said, subsequent NATIVE's actions would not rebuild preceding artifacts (unless the builder would be silly).

> I'm curious where you're seeing race conditions with the native builds. Makefile and Ninja generators shouldn't race (makefile because of the job server model and Ninja because of the use of the console pool).

I have just followed D54153 <https://reviews.llvm.org/D54153> and I haven't met any matters in my use cases. I haven't thought this logic could be optimized (in this).

At the moment I would like to land this unconditionally. I think we could exclude this conditionally later.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D149072/new/

https://reviews.llvm.org/D149072



More information about the llvm-commits mailing list