ChuanqiXu9 wrote: Please understand the concerning for maintainabilities. It really scares to see a patch with 5k lines of change for a brand new feature. Especially the human resources for clang/C++ core developers are really limited. We have to be careful.
Back to the patch itself, the most concerning/confusing point is, to my experience, the bottleneck of a build process generally comes from the compiler itself instead of the build system or the communications between compiler and build system. In complex real world projects I've seen, most compilation time is spent on template instantiations and middle/back end optimizations. Amdahl's law tells us, the overall speedup of an optimization to a subsystem is limited to the ratio of subsystem to the whole system. My concern/problem is, is it worthy to introduce such a big feature to optimize the cold part of the whole process? **especially the new model is not widely proved**. The prove consists two parts: - We need to see the proportion of the cost of build system itself and the cost of communications between build system and compilers within the entire build process for a big/complex projects. - Then it is how good the new model is. --- Besides the new model, for HMake, I'm really appreciating what you have done. But to be honest, HMake needs more users/ successful cases to show it is good so that more tools can support the new model it raised. Build systems are not hard but very complex. Due to the complexity, converting a build system is not easy. No one I know fevers to write build scripts. So I feel it is hard for HMake to get new users today. Then it is an egg and chicken problem if HMake really needs the patch. I'm sorry for that. But as I said, we have to be careful. If HMake is really really good, and the changes in clang are necessary, I do think you can make it with a plugin or with a fork, then it is a simpler https://github.com/llvm/llvm-project/pull/147682 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
