Steve Naroff wrote:- > I'd like to emphasize something (my own form of over analysis:-)... > > Unlike gcc, clang is being developed as a set of reusable components > (with the goal of supporting a diverse set of needs). From my > perspective, striking the right balance between abstraction and > performance is an "art". It's hard to do, and hasn't been a part of > the C compiler development culture over the years (making it difficult > to find people that respect/understand this idiom).
I think you're absolutely right; the library / interface idiom is the right approach and will have huge payoff in many directions. I prefer the architecture of clang to my own front end for this reason, and am attempting to reorganize it in a similar direction. I agree with Chris and doubt the abstraction costs much either; I'd be surprised if it exceeded 10% or so. I think NetBSD is a good example (in C) of how abstracted code can be cleaner and just as efficient. I have no idea why clang is slower than cfe; the gap surprised me too. I'm not doing anything magic; it's just straight-forward C code like APFloat would look like if you removed the class syntactic sugar. I build a fairly complete internal representation; there's no corner being cut. Neil. _______________________________________________ cfe-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
