[cfe-dev] Parsing benchmark: LibTomMath

Neil Booth neil at daikokuya.co.uk
Sat Nov 17 18:47:45 PST 2007


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.



More information about the cfe-dev mailing list