[cfe-dev] alternate clang driver
csdavec at swan.ac.uk
Fri Oct 21 14:47:16 PDT 2011
On 21 Oct 2011, at 22:15, reed kotler wrote:
> I don't buy the C++ is faster that Python argument. It's just a driver
> for a compiler! You could write it in Turing machine primitives and it
> would be super fast on a modern computer. It's not computing the
> strongly connected components of a terabyte sized graph.
The issue is start-up time. It takes longer to launch the python process than it does for the entire compilation and code generation process to happen on small C files at -O0.
> I think you will have some kind of scripting component; whether it's LUA
> or Python or some hand brewed language format that is read by the clang
> driver and then interpreted, that is what you will have when you finish
> solving this problem. That is what I meant by all solutions will be
I disagree. The number of things that different targets need are relatively limited. The vast majority can get away with specifying default include paths, crt*.o locations, ld / as locations, and target triple. If that solves 99% of cases, then it's worth doing that and leaving some external driver for the more complex weird cases.
Adding a dependency on Python (or Lua, or what other buzzword scripting language that you favour this week) for invoking an [Objective-]C[++] compiler seems to redefine overkill.
More information about the cfe-dev